From 0ed2e973e7d9c61dc24da0b6ea5d74f6ff233f6b Mon Sep 17 00:00:00 2001 From: mccallum Date: Mon, 3 Apr 1995 03:29:10 +0000 Subject: [PATCH] Test mutable strings and "strings as collections of char's". git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@243 72102866-910b-0410-8b05-ffd578937521 --- Testing/string.m | 36 ++++++++++++++++++++++++++++++++++-- 1 file changed, 34 insertions(+), 2 deletions(-) diff --git a/Testing/string.m b/Testing/string.m index e2a28ce95..2850f4f23 100644 --- a/Testing/string.m +++ b/Testing/string.m @@ -1,10 +1,42 @@ -#include "objects/String.h" +#include + +/* For demo of Strings as Collections of char's. */ +#include + +void +print_string(NSString* s) +{ + printf("The string [%s], length %d\n", [s cString], [s length]); +} int main() { id s = @"This is a test string"; id s2; - printf("The string [%s], length %d\n", [s cString], [s length]); + print_string(s); + + s2 = [s stringByAppendingString:@" with something added"]; + print_string(s2); + + s2 = [s mutableCopy]; + [s2 replaceCharactersInRange:((NSRange){10,4}) + withString:@"changed"]; + print_string(s2); + + /* An example of treating a string like a Collection: + Increment each char. */ + { + id s3; + void rot13(elt c) + { + [s3 appendElement:(char)(c.char_u + 1)]; + } + + s3 = [NSMutableString stringWithCapacity:[s2 length]]; + [s2 withElementsCall:rot13]; + print_string(s3); + } + exit(0); }