相关疑难解决方法(0)

将字符串转换为整数的sscanf或atoi有什么区别?

gcc 4.4.4 c89

将字符串转换为整数值更好.

我尝试了两种不同的方法atoi和sscanf.两者都按预期工作.

char digits[3] = "34";
int device_num = 0;

if(sscanf(digits, "%d", &device_num) == EOF) {
    fprintf(stderr, "WARNING: Incorrect value for device\n");
    return FALSE;
}
Run Code Online (Sandbox Code Playgroud)

或使用atoi

device_num = atoi(digits);
Run Code Online (Sandbox Code Playgroud)

我认为sscanf会更好,因为你可以检查错误.但是,atoi没有做任何检查.

c scanf atoi

64
推荐指数
2
解决办法
12万
查看次数

标签 统计

atoi ×1

c ×1

scanf ×1