NSLog(@"Before: %d",currentArticle);
currentArticle--;
NSLog(@"SUBTRACT %d",currentArticle);
“currentArticle”是整数。这在我的控制台中仅被回显一次。如果我不进行此减法运算,则数字“currentArticle”仍为7。
它在主线程中运行,并且每次用户交互仅运行一次。
我也尝试过
currentArticle = currentArticle - 1;
结果相同。我在服用疯药吗?
谢谢!
编辑:
声明如下:
extern int *currentArticle;
并分配为:
currentArticle = 0;
我试图这样重写:
int *curArticle; // in my .h file
curArticle = 1;
然后我运行
curArticle--;
而且仍然减少了两个...
我已逐步完成代码,并确保没有其他调用触及此变量。.到目前为止,感谢您的反馈,我将继续努力。
最佳答案
我同意以上评论。我敢打赌,您的代码看起来像这样:
int *currentArticle = 7; // or something
具体来说,currentArticle甚至可能不是指向int的指针,但很可能是指向某个4字节类型的指针。当将'-'和'++'运算符应用于指针时,它会根据所指向的类型的大小减小或递增。
关于iphone - objective-c : How does 7 - 1 = 3?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5267187/