c++ 的 scanf_s
时间: 2023-08-15 12:14:28 浏览: 158
在C++中,`scanf_s`函数是用于输入变量的方法,类似于C语言中的`scanf`函数。它的使用方式与`scanf`略有不同,需要在格式字符串中指定输入变量的类型,并使用地址符`&`获取变量的地址。下面是一个使用`scanf_s`的示例代码:
```cpp
int a, b;
scanf_s("%d%d", &a, &b);
```
与`scanf`不同的是,`scanf_s`还有一个`int`类型的返回值,用于表示成功读取的变量个数。常用于判断输入是否符合格式化类型。下面是一个示例代码:
```cpp
int a, b;
int c = scanf_s("%d%d", &a, &b);
```
上述代码中的`c`有三种可能的结果:
1)`c = 0`,表示两个输入中有0个符合格式化类型的输入。
2)`c = 1`,表示两个输入中有1个符合`%d`格式化类型的输入。
3)`c = 2`,表示两个输入中有2个符合`%d`格式化类型的输入。
需要注意的是,在`scanf_s`中,`double`类型的格式符与`printf_s`中的格式符不一样。在C++中,虽然提供了`cin`和`cout`进行输入输出,但是当需要大量变量的输入和输出时,使用`scanf_s`和`printf_s`的效率会更高。这也是为那些从C语言转向C++的人提供的一个福利。参考资料:\[1\]\[2\]
#### 引用[.reference_title]
- *1* [C++——scanf_s与printf_s](https://blog.csdn.net/Wannna/article/details/103949985)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文