Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
このコードが 24 と 20 を出力する理由がわかりません。
int main(){ int m = 24, n = 024; printf("%d %d", m, n); return 0; }
C では、「0」で始まる数字は 8 進数です。つまり02424 8、つまり 2•8 + 4 = 20 です。
024
先頭の 0 は 8 進数を示し、基数は 8 です。
2 * 8 + 4 == 20