0
点赞
收藏
分享

微信扫一扫

【C语言_6】快速学会scanf函数

一.VS无法使用scanf函数

1.scanf函数运行报错

#include<stdio.h>
int main()
{
int x;
scanf("%d",&x);
x=x-1;
printf("%d",x);
return 0;
}

运行结果:

【C语言_6】快速学会scanf函数_C4996报错

scanf函数被认为是不安全的,编译器会报出C4996错误

2.解决方法

点击右边,右击解决方案下面的项目,点击属性,进入这个页面:

【C语言_6】快速学会scanf函数_C4996报错_02

点击左侧的C/C++,点击预处理器,编辑预处理器定义:

【C语言_6】快速学会scanf函数_C4996报错_03

将_CRT_SECURE_NO_WARNINGS添加进去,如图:

【C语言_6】快速学会scanf函数_scanf函数_04

3.顺利解决成功运行

【C语言_6】快速学会scanf函数_C4996报错_05

【C语言_6】快速学会scanf函数_C4996报错_06

二.scanf函数使用分析

1.scanf函数使用规范

  • scanf是一个变参函数
  • scanf的第一个参数是字符串
  • scanf的第一个参数内容为匹配内容及转换规范
  • scanf的后续参数是数据存放的位置
  • 转换规范的写法与数量需要与后续的参数一一对应
  • scanf将输入的字符串按照对应的转换规范进行转换
  • 转换完成后的二进制,将依次存放到后续参数的变量地址中
  • 如果scanf将转换后的二进制存储到基本变量中,在变量名前加&
  • 如果scanf将转换后的二进制存储到字符数组中,字符数组名不加&

2.scanf函数输入数值使用案例

scanf("%hhd %hd %d %f ",&c,&S,&i,&f);

#include<stdio.h>
int main()
{
char c;
short s;
int i;
float f;
scanf("%hhd %hd %d %f ",&c,&s,&i,&f);
printf("c=%hhd\ns=%hd\ni=%d\nf=%f\n",c,s,i,f);
return 0;
}

运行结果:

【C语言_6】快速学会scanf函数_C4996报错_07

3.如何输入字符和字符串

1.输入字符

#include<stdio.h>
int main()
{
char c,d;
scanf("%c %hhd",&c,&d);
printf("%d %c",c,c);
printf("%d %c",d,d);
return 0;
}

运行结果:

【C语言_6】快速学会scanf函数_C4996报错_08

2.输入字符串

#include<stdio.h>
int main()
{
char str[10];
scanf("%s",str);
printf("%s",str);
return 0;
}

运行结果:

【C语言_6】快速学会scanf函数_scanf函数报错_09


举报

相关推荐

0 条评论