在上一次采访中,我发现了这个棘手的问题。在这两行之后,什么才是i的价值。
int i=c;
//c is a constant
i=i++;
其中c是一个常数(其中c是在前面初始化的)。请给我一步一步的回答,而不是一个字的回答。
发布于 2015-02-14 06:11:34
最后,i的值与c保持不变。
说明:-当我被分配到i++时;
步骤1.第一步i++返回值c(但未分配给左操作数i).
步骤2.然后i++将i的值增加到c+1。
步骤3.为我分配了在step1中返回的值c。
实际上,i的值保持不变,但在执行过程中的某些地方是c+1,但最后用c值赋值。
https://stackoverflow.com/questions/28512978
复制相似问题