[問題] 為什麼 *size++ 和 *size+=1 結果不一樣
今天用DEV寫了一段的C的程式
發現奇怪的地方
這是我原始的程式碼
#include <stdio.h>
void f(int *i)
{
*i+=1;
}
int main(void)
{
int i=0;
f(&i);
printf("%d",i);
return 0;
}
結果印出 1
然後我把程式改一個地方:把 *i+=1 改成 *i++
結果印出 0
小弟以為 i++ 和 i+=1 是一樣的
但結果並不是這樣
請各位大大賜教!!
感激不盡!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.24.42.55
→
01/20 00:25, , 1F
01/20 00:25, 1F
→
01/20 00:26, , 2F
01/20 00:26, 2F
→
01/20 00:27, , 3F
01/20 00:27, 3F
→
01/20 00:31, , 4F
01/20 00:31, 4F
→
01/20 00:31, , 5F
01/20 00:31, 5F
→
01/20 00:39, , 6F
01/20 00:39, 6F
推
01/20 02:38, , 7F
01/20 02:38, 7F
→
01/20 16:03, , 8F
01/20 16:03, 8F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章