c语言将数字字符串转换为整数?

一般的做法是将每个数字字符依次转换为数字再乘以位数并相加,突然想到scanf/fscanf也是从键盘/文件读取的字符串并转化为整数,那对于字符数组可不可以用这两个函数处理呢

第1个回答  2020-06-17

#include <stdio.h>


int main()

{

    int a,b;

    char sa[100]="-123",sb[100]="456";

    sscanf(sa,"%d",&a);

    sscanf(sb,"%d",&b);

    printf("%d+%d=%d\n",a,b,a+b);

    return 0;

}

追问

这个sscanf是c标准io库中的函数吗

本回答被提问者采纳
第2个回答  2020-06-18
c语言标准库里有类似atoi这样的函数可以直接转啊
第3个回答  2020-06-18
int func(char* s)
{
int retval=0;
int n=1;
if (*s=='-')
{
n=-1;
s++;
}
while (*s!='\0')
{7
retval=retval*10+(*s-'0');
s++;
}
return(n*retval);
}
相似回答