c语言scanf_s函数详解,scanf_s()函数
scanf_s()或scanf()函数从标准输入读取数据,并根据格式控制字符串中的格式说明符将它们转换为一个或多个值。
scanf_s()函数的原型如下:
int scanf_s(const char * restrict format, . . . );
scanf()函数也有一个类似的原型。
scanf()和scanf_s()之间的区别是:
后者需要两个参数,每个输入数据由c,s和[说明符,
前者只需要一个参数。
格式控制字符串基本上是scanf_s()应如何将传入字符流转换为所需值的描述。
在格式控制字符串之后,可以拥有一个或多个可选参数。
对于使用规范c,s或[说明符]读取的每个输入,第一个对应的参数是指向要存储输入的内存的指针,第二个参数对应于前一个参数指向的字节数。
scanf_s()从stdin读取,直到它到达格式控制字符串的末尾或者直到出现错误情况。
在控制台程序中需要输入时,将使用此函数。 这将接收行上的所有输入,直到按下回车键。 然后它会将值放入声明的变量中。它与scanf()函数相同,但它是安全的。 下面是一个例子:
#include
int main()
{
char c;
printf("Enter a letter");
scanf_s("%c", &c, 1);
printf("%s",&c);
return 0;
}
scanf()在vs2013里报错,编译器提示要用scanf_s代替;
scanf_s()参数与scanf()不同;例如scanf("%s",&name,n),整型n为name类型的大小,如果name是数组,那么n就是该数组的大小。
#include
#include
struct Student
{
char name[10];
char sex[10];
int age;
char city[10];
char grade[10];
};
int main()
{
struct Student stu1;
printf("请输入姓名:");
scanf_s("%s", &stu1.name,10);
printf("请输入性别:");
scanf_s("%s", &stu1.sex,10);
printf("请输入年龄:");
scanf_s("%d", &stu1.age,4);
printf("请输入城市:");
scanf_s("%s", &stu1.city,10);
printf("请输入年级:");
scanf_s("%s", &stu1.grade,10);
printf("姓名:%s\n", stu1.name);
printf("性别:%s\n", stu1.sex);
printf("年龄:%d\n", stu1.age);
printf("城市:%s\n", stu1.city);
printf("年级:%s\n", stu1.grade);
return 0;
}
c语言scanf_s函数详解,scanf_s()函数相关推荐
- python average函数详解_python 函数详解
函数函数是代码的一种组织形式 函数应该能完成一项特定的工作,而且一般一个函数只完成一项工作 有些语言,分函数和过程两个概念,通俗解释是,有返回结果的是函数,无返回结果的叫过程,python不加以区分 ...
- Python函数详解:函数定义、调用,lambda函数,高阶函数map,filter,reduce,函数式编程,模块化设计、代码复用、函数递归、enumerate()
一.函数 函数是一段具有特定功能的.可重用的语句组,通过函数名来表示和调用. 函数是一段代码的抽象和封装 函数是一段具有特定功能的.可重用的语句组 函数是一种功能的抽象,表达特定功能 两个作用:降低编 ...
- Shell函数详解(函数定义、函数调用)
Shell 函数的本质是一段可以重复使用的脚本代码,这段代码被提前编写好了,放在了指定的位置,使用时直接调取即可. Shell 中的函数和C++.Java.Python.C# 等其它编程语言中的函数类 ...
- go函数详解:函数定义、形参、返回值定义规范、函数内存分析、不支持重载、支持可变参数、基本数据类型和数组默认都是值传递的、支持自定义数据类型、函数返回值命名
引入 [1]为什么要使用函数: 提高代码的复用型,减少代码的冗余,代码的维护性也提高了 [2]函数的定义: 为完成某一功能的程序指令(语句)的集合,称为函数. [3]基本语法 func 函数名(形参列 ...
- 【python入门篇——16】Python函数详解(函数定义,参数种类、返回值、作用域等)
一 函数 定义: 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数名即可 特性: 1.代码重用2.保持一致性3.可扩展性 二 函数的创建 2.1 格式: Pyt ...
- python函数详解_INDEX函数
一. 函数的作用 函数就是将一段具有独立功能的代码块 整合到一个整体并命名,在需要的位置调用这个名称即可完成对应的需求. 函数在开发过程中,可以更高效的实现代码重用. 二. 函数的使用步骤 1. 定义 ...
- python函数详解_Python函数详解(转)
原地址:http://www.ithov.com/linux/100534_2.shtml 摘要:Python是一种面向对象.直译式计算机程序设计语言,也是一种功能强大而完善的通用型语言,已经具有十多 ...
- mysql capi函数详解_CAPI函数描述(A-F)
25.2.3.1. mysql_affected_rows() my_ulonglong mysql_affected_rows(MYSQL *mysql) 描述 返回上次UPDATE更改的行数,上次 ...
- linux mmap 函数详解,mmap函数详解与代码实操
icon1.jpg mmap 函数是 unix/linux下的系统调用. 当存在客户-服务程序中复制文件时候,其数据流如下,要经历四次数据复制,开销很大. image.png 果采用共享内存的方式,那 ...
最新文章
- PHP--isset()和unset()函数的用法
- 利用spring aop统一处理异常和打日志
- 【组队学习】十二月微信图文索引
- ITK:可视化静态稀疏Shi 2D水平设置图层
- IntelliJ IDEA关于logger的live template配置
- 来吧,1分钟带你玩转Kafka
- GDB 用法和命令介绍
- Linux ubuntu 切换阿里更新源
- 浅谈js与jq给新增元素动态绑定事件(事件委托)
- HDU4565(SummerTrainingDay05-C 矩阵快速幂)
- plc编程软件通过计算机,英威腾PLC编程软件(Auto Station)
- 分享一个jQuery的自动客户端本地保存插件Sisyphus.js - 帮助你自动保存用户输入内容...
- 华为认证云服务工程师(HCIA-Cloud ServiceV3.0)-- 认证介绍
- hdu4489 The King’s Ups and Downs
- sqlserver 默认日期格式转换为 yyyy-MM-dd
- 第五篇:Spring源码篇-ApplicationContext
- linux中文本编辑vi命令插入技巧
- 哈工大硕士生实现 11 种数据降维算法,代码已开源!
- 时间字符串和Date之间的转换
- 异构计算实验——CUDA计算矩阵幂