C语言scanf_s函数的使用

因为scanf函数存在缓冲区溢出的可能性;提供了scanf_s函数;增加一个参数;

scanf_s最后一个参数是缓冲区的大小,表示最多读取n-1个字符;

下图代码;

读取整型数可以不指定长度;读取char,指定长度1;

C语言scanf_s函数的使用_第1张图片

buf的长度为5,如果多输不会接收,运行如下图;

C语言scanf_s函数的使用_第2张图片 

如果一次读取2个数据,每个都指定长度,写法是,scanf_s("%s %s", buf1, 8, buf2, 8);

运行如下;

C语言scanf_s函数的使用_第3张图片 

buf1的长度是8,多输入则没有接收;

C语言scanf_s函数的使用_第4张图片 

你可能感兴趣的:(VC++,c语言,算法,开发语言,scanf_s)