char类型的数组如何不储存空格 换行吗
时间: 2024-10-22 08:22:11 浏览: 21
C#中的char、string和StringBuilder的使用详解
当你创建一个`char`类型的数组,并希望存储文本时不包含空格或换行符,你需要在初始化数组时直接输入不含这些特殊字符的字符串。例如:
```c++
char myArray[50] = "HelloWorld"; // 这里不会自动添加空格或换行
```
如果你想处理用户输入或其他动态数据,可以先去除空格和换行再存储。在C++中,你可以使用`std::string`或`getline`函数,并配合`std::isspace`函数来判断并移除空格:
```cpp
#include <iostream>
#include <string>
std::string removeSpaces(const std::string &input) {
std::string result;
for (char c : input) {
if (!std::isspace(c)) {
result += c;
}
}
return result;
}
int main() {
std::string userInput;
std::getline(std::cin, userInput); // 获取用户输入
userInput = removeSpaces(userInput);
char myArray[strlen(userInput.c_str()) + 1]; // 防止缓冲区溢出
strcpy(myArray, userInput.c_str()); // 将无空格的字符串复制到数组
// ...然后处理myArray...
}
```
阅读全文