目标C:7 – 1 = 3?
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字节类型的指针。 ‘ – ‘和’++’运算符在应用于指针时,会按指向的类型的大小递减或递增。
我想到的事情:线程(如果这是一个奇怪的问题,有线程)? 或者它是由一个事件调用的(它被触发不止一次)?