You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VSCode中编写C语言代码使用scanf报错声明不兼容如何解决

错误原因
  • 调用标准库scanf函数时,不应该在函数名前加int关键字,你的写法会被编译器识别为尝试声明一个名为scanf的自定义函数,和标准库中已经声明的scanf函数冲突,因此抛出声明不兼容、需要类型说明符的报错。
  • 传递scanf参数时,已经声明过的ab变量不需要重复加int类型修饰,且scanf读取基础类型变量需要传入变量的内存地址,要在变量前加取地址符&。
修正后的代码
#include <stdio.h>

int main()
{
    int ab;
    
    printf("Whats 5+5:");
    
    scanf("%d", &ab);
    
    printf("\nbla,bla,blabla,bla,blabla,bla,bla");
    
    if (ab == 10) {      
        printf("Correct anwser!!!");
    }    
    else { 
        printf("Incorrect anwser!!!");
    }
    
    return 0;
}
修改说明

仅需将原代码中int scanf("%d", int ab);一行替换为scanf("%d", &ab);即可正常运行。

内容的提问来源于stack exchange,提问作者filip noble

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 08:06:04