c++scanf字符串
时间: 2023-08-27 18:12:21 浏览: 106
C语言中sscanf()函数的字符串格式化用法
在 C++ 中,可以使用 `scanf` 函数来读取字符串。以下是一个示例代码:
```cpp
#include <iostream>
#include <cstdio>
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
printf("你输入的字符串是:%s\n", str);
return 0;
}
```
在上述代码中,我们声明了一个字符数组 `str` 来存储输入的字符串。然后使用 `scanf` 函数来读取字符串,并将其存储在 `str` 数组中。请注意,`scanf` 函数使用 `%s` 格式说明符来读取字符串,它会自动跳过字符串中的空格和换行符。最后,我们使用 `printf` 函数来输出所读取的字符串。
需要注意的是,`scanf` 函数在读取字符串时存在一定的风险,因为它无法防止输入的字符串超过指定的数组大小。为了避免缓冲区溢出,可以使用 `%` 后跟一个数字来限制读取的字符数,例如 `%99s`(假设 `str` 数组大小为 100)。
此外,C++ 中还有更安全的方法来读取字符串,比如使用 `std::cin` 和 `std::getline` 函数。这些方法可以更好地处理输入错误和空格等情况。
阅读全文