C语言实现字符串转数字(包括负数)

源代码

#include 
#include 

long fun(char *p){
    // 判断是否有负号
    int flag=0;
    long sum=0;
    
    if(*p=='-'){
        flag=1;
        p++;
    }
    while(*p){
        sum=sum*10+(*p-48);
        p++;
    }
    if(flag){
        sum=-1*sum;
    }
    return sum;
}

int main()
{
    char s[6];
    long n;
    // 输入字符串
    printf("Enter a string:\n");
    gets(s);
    n=fun(s);
    printf("%转换后的数字为:ld\n",n);
    return 0;
}

你可能感兴趣的:(C语言实现字符串转数字(包括负数))