动态字符字段一次读取一个字符
Dynamic char field reading one char at the time
#include <stdio.h>
#include <iostream>
using namespace std;
int main()
{
char * text = new char;
scanf("%c", text);
scanf("%c", text+1);
return 0;
}
对不起这个蹩脚的问题...我正在尝试一次读取一个字符串(因为我需要检查每个字符的 sth..)对于输入"ab",输出是"ab"和随机?字符。。。如果没有'scanf("%c", text+1);,它就不起作用。我可以使用静态字段来做到这一点,但这个版本最终给了我一个额外的字符。我做错了什么?:'(
你分配一个char
给你指针text
。然后,您可以访问text[0]
和text[1]
,这显然提供了越界访问权限。我强烈建议您不要显式访问内存,而是使用std::string
,例如:
std::string text;
for (std::istreambuf_iterator<char> it(std::cin), end; it != end; ++it) {
// do whatever checks you need to do
text.push_back(*it);
}
std::cout << "read '" << text << "'n";
相关文章:
- 为什么 sscanf 无法从一个字符串中读取uint64_t和字符?
- 如何将一个ostringstream十六进制字符串字符对转换为单个unit8t等价的二进制值
- 如何检查一个c++字符串中有多少相同的字符/数字
- 使用.find函数在c++中查找字符和另一个字符之间的大小
- 我的目标是编写一个程序来计算和存储字符串在字符数组中出现的位置
- 关于字符数组,我正在尝试将数组中的每个字符分配给另一个值
- 我已经建立了递归关系,它找到了两个字符串之间最长的连续公共字符串,我怎么能跳过其中一个字符串中的一个字符
- 使用动态分配将 char* 复制到另一个字符**
- 将字符向量复制到另一个向量
- 如何将一个结构的字符数组复制到结构的另一个字符数组中?
- 如何在不知道对应关系的情况下在字符串中搜索字符并将其分配给另一个字符?
- 计算在同一位置至少包含一个常用字符的不同字符串对
- 如果我们在其中输入一个整数,则字符会给出整数作为输出,但是当分配给它一个整数时,这不会发生。为什么?
- 如何检查一个字符是否与字符数组中的另一个字符匹配?
- C++:使用另一个字符将一个字符大写
- 我可以得到一个字符 * 到一个 std::sregex_iterator 匹配 str() 吗?
- C ++读取用户输入的字符一个一个符号
- 遍历数组或从打开的文件中获取字符 - 一个比另一个有什么优势
- 将文本文件的内容一个字符一个字符地读入矢量,不跳过空白或新行
- 这是更快和更有效的,处理一个字符一个字符作为字符或流