首页 > 解决方案 > 为什么10变成:在c程序中

问题描述

char **array;        
char *x_ptr = &array[0][0];
int rowcount = 0;
    for (int i = 0; i < row; i++)
    {


            for (int j = 0; j < column; j++)
            {
                if (j == 0) {
                    rowcount += 1;
                    *(x_ptr +( i*column + j)) = rowcount+'0';
                }
                else {
                    *(x_ptr +( i*column + j)) =  0;
                }

            }
     }

第 10 次运行此循环时,为什么它将 10 的 int 值存储为符号:当前结果 8,9,:,;,<,=,>

标签: cfor-loopcharacter

解决方案


'0' 的 ASCII 是 48。如果你加 10,你会得到 58,这是 ':' 的 ASCII。


推荐阅读