scanf_s怎么用
时间: 2023-08-26 17:19:07 浏览: 165
scanf的用法
scanf_s 是 C/C++ 中用于输入数据的函数,它是 scanf 函数的安全版本。与 scanf 相比,scanf_s 在读取字符串时需要指定缓冲区的大小,以防止缓冲区溢出。
scanf_s 的用法如下:
```c
#include <stdio.h>
int main() {
int num;
char name[20];
printf("请输入一个整数:");
scanf_s("%d", &num);
printf("你输入的整数是:%d\n", num);
printf("请输入一个字符串:");
scanf_s("%19s", name, sizeof(name));
printf("你输入的字符串是:%s\n", name);
return 0;
}
```
在上面的示例中,我们首先声明一个整数变量 `num` 和一个字符数组 `name`,分别用于接收输入的整数和字符串。然后使用 `scanf_s` 函数进行输入。
对于整数的输入,我们使用 `%d` 格式说明符,并将输入的值保存到 `num` 变量中。注意,在 `scanf_s` 中,我们需要使用 `&num` 传入变量的地址。
对于字符串的输入,我们使用 `%19s` 格式说明符,并将输入的值保存到 `name` 数组中。在这里,19 是缓冲区的大小,保留一个位置用于存储字符串的结尾符 `\0`。同时,我们使用 `sizeof(name)` 来指定缓冲区的大小。
需要注意的是,在使用 `scanf_s` 函数时,我们必须指定缓冲区的大小,以确保输入的数据不会导致缓冲区溢出。
阅读全文