[求助]初学C语言中IDE警告问题
[求助]我是一名C语言初学者,在自学编程中遇到IDE(Visual Studio2022)如下警告,严重性 代码 说明 项目 文件 行 禁止显示状态
警告 C6328 大小不匹配: 已将“unsigned __int64”作为 _Param_(3) 传递,但需要使用“unsigned int”来调用“scanf_s”。 悬挂else C:\Users\SZC RYY\Desktop\悬挂else\悬挂else.c 12
警告 C6328 大小不匹配: 已将“unsigned __int64”作为 _Param_(3) 传递,但需要使用“unsigned int”来调用“scanf_s”。 悬挂else C:\Users\SZC RYY\Desktop\悬挂else\悬挂else.c 7
警告 C6031 返回值被忽略: “getchar”。 悬挂else C:\Users\SZC RYY\Desktop\悬挂else\悬挂else.c 9
警告 C4477 “scanf_s”: 格式字符串“%c”需要类型“unsigned int”的参数,但可变参数 2 拥有了类型“size_t” 悬挂else C:\Users\SZC RYY\Desktop\悬挂else\悬挂else.c 7
警告 C4477 “scanf_s”: 格式字符串“%c”需要类型“unsigned int”的参数,但可变参数 2 拥有了类型“size_t” 悬挂else C:\Users\SZC RYY\Desktop\悬挂else\悬挂else.c 12
警告 C4047 “==”:“int”与“char ”的间接级别不同 悬挂else C:\Users\SZC RYY\Desktop\悬挂else\悬挂else.c 14
警告 C4047 “==”:“int”与“char ”的间接级别不同 悬挂else C:\Users\SZC RYY\Desktop\悬挂else\悬挂else.c 14
警告 C4047 “==”:“int”与“char ”的间接级别不同 悬挂else C:\Users\SZC RYY\Desktop\悬挂else\悬挂else.c 16
警告 C4047 “==”:“int”与“char ”的间接级别不同 悬挂else C:\Users\SZC RYY\Desktop\悬挂else\悬挂else.c 16
源代码如下
#include<stdio.h>
int main(void)
{
char rain;
char free;
printf_s("是否有空?(Y/N)");
scanf_s("%c", &free, sizeof(free));
getchar();
printf_s("是否下雨(Y/N)");
scanf_s("%c", &rain, sizeof(rain));
if (free == "Y" || free == "y")
{
if (rain == "Y" || rain == "y")
{
printf_s("记得带伞\n");
}
}
else
{
printf_s("女神没空T^T\n");
}
return 0;
}
经上网搜索后无法自行解决,望大神帮助,万分感谢
<pre style="font-family:Consolas;font-size:13px;color:gainsboro;">
</pre>
一般,警告都直接忽略( 本帖最后由 lvk 于 2023-1-11 19:38 编辑
网上都能搜到啊:
C6328和C4477: blog.csdn.net/zyx_bx/article/details/120311272
C6031: ask.csdn.net/questions/7448070
C4047: blog.csdn.net/lyorz/article/details/126451700
(没有发链接权限,只能这样发了,选择之后右键转到即可) 非常感谢
页:
[1]