我们经常需要把char数组类型的纯数字转换成int类型,一般的想法是写一个for循环(或者while循环)来保存,例如:
char str[100]="123";
int len=strlen(str);
int n=0;
for(int i=0;i<len;i++){
n=n*10+(str[i]-'0');
}
下面我要阐述一种更加简便的方法:
char str[100]="123";
int n;
sscanf(str,"%d",&n); //从左到右
上面就可以快速地把str中的数字以%d的格式写入到n中,同时如果要将n写入str中,也有类似快速的办法:
int n=123;
char str[100];
sprintf(str,"%d",n);//从右到左