gpt4 book ai didi

ios - Objective C 解析问题

转载 作者:太空宇宙 更新时间:2023-11-04 00:53:34 27 4
gpt4 key购买 nike

请多多包涵。我完全是 C 的新手,更不用说 Objective C 了。我正在尝试做一些应该简单但不起作用的事情。我正在扫描一串也包含符号的数字。当 mini 函数遍历输入字符串时,它将数字附加到一个新字符串,直到它遇到一个运算符(我正在以我自己的方式编写计算器作为学习练习。)现在我只是在做开始部分并扫描字符串和附加字符。这是我的代码:

char userInput[99];
NSMutableString *number = nil;
int i;

printf( "Please enter math: " );
scanf( "%s", userInput );
fpurge( stdin );

NSString *InputString = [NSString stringWithUTF8String:userInput];

for (i=0; i < [InputString length]; i++) {
char current = [InputString characterAtIndex:i];
if (isalnum(current)) {
[number appendString:[NSString stringWithCharacters:&current length:1]];
NSLog(@"%@ ", number);
}
}

对于我的生活,我似乎无法弄清楚为什么它一直打印 2012-05-02 19:23:20.935 CALC[1447:403] (null) 而不是数字值对于它遇到的每个数字。因此,例如,如果输入的字符串中有 5 个数字,它将打印 5 次。

最佳答案

您从未初始化过 number——所以当您对其调用 -appendString: 时,您只是附加到 nil,并且结果只是 nil 返回。试试你的第二行:

NSMutableString *number = [NSMutableString string];

现在 number 是一个空字符串对象,这与 nil 有很大不同,后者根本不是对象。

关于ios - Objective C 解析问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10423122/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com