我正在尝试使用命令行参数实现atoi
函数。我知道之前询问过这个问题但不使用命令行参数。我的代码在下面,它显示垃圾值。
#include<stdio.h>
int main(int argc,char**argv)
{
int num=0,i,j;
for(i=0;argv[1][i];i++) //loop upto numm
{
num=num*10+argv[1][i]-48; //converting to interger
}
printf("%d\n",argv[1]); // why garbage value ?
}
答案 0 :(得分:0)
尝试
printf("%d\n",num);
而不是
printf("%d\n",argv[1]);
在for循环之后。你的转换是正确的,但你最后打印出错误的东西。