#include <stdio.h>
int main(int argc, char **argv) {
int x[5][5] = {{0,1,2,3,4},{5,6,7,8,9}};
for (int i = 0; i < 4; i++) {
for (int j = 0; i < 4; i++) {
printf("%d\n", x[i][j]); } }
return 0; }
这应该给我:0 1 2 3 4 5 6 7 8 9
结果是:0 5 0 0
然后,当我将它们更改为字符时:
#include <stdio.h>
int main(int argc, char **argv) {
char x[5][5] = {{'0','1','2','3','4'},{'5','6','7','8','9'}};
for (int i = 0; i < 4; i++) {
for (int j = 0; i < 4; i++) {
printf("%d\n", x[i][j]); } }
return 0; }
我得到 48 53 0 0。
为什么?代码对我来说很清楚,但似乎在背景上发生了一些模糊的事情(或者我的大脑以一种非常“pythonic”的方式工作......)