我正在编写一个程序,其中将标准输入读入缓冲区,然后进行处理。绝大多数需要处理的项目是字符串(或者是字符数组)。但是,我确实有一项需要作为字符数组读入,然后转换为 int 以便将来使用。
for(i=0; i<n; i++){
num[i] = buff[(i)];
printf("%c", num[i]);
}
convert = atoi(num);
所以我确定正确的字符组被读入 num 因为 printf 是正确的。但是,当我尝试打印 convert 时,我最终得到了 0,而且我对自己做错了什么感到非常困惑。我知道返回 0 意味着无法执行有效的转换,但我不知道是什么使它无效。有小费吗?
编辑:抱歉之前没有包括这些>_<
n 是 buff 数组中的字符数 buff 是读取到的缓冲区数组 stdin