C++指针数组到字符数组中的特定位置
C++ pointer array to specific location in char array
我有一个项目问题。它正在生成C++代码来编辑文件,但有一件事我坚持了下来。该文件存储在 char 数组中,我想有一个指向 char 数组内特定位置的指针数组,但我只得到一个指向数组一个字符的指针。我想要的是这样的东西,但在一个非常大的数组上:
char array[] = "Hello, how are you?";
char* ptr = &array[7];
*ptr = "who";
std::cout << array << std::endl;
//Hello, who are you?
这是一个愚蠢的例子,但我希望它能描述我正在尝试做的事情。
目前我只能这样做:
char array[] = "Hello, how are you?";
char* ptr = &array[7];
*(ptr) = 'w';
*(ptr+1) = 'h';
*(ptr+2) = 'o';
std::cout << array << std::endl;
//Hello, who are you?
但这并不容易处理。我想要一个指针数组,以便轻松编辑数组的各个部分。
我非常感谢任何建议!
您的直接问题可以这样解决:
#include <cstring> // std::memcpy
char array[] = "Hello, how are you?";
char* ptr = &array[7];
std::memcpy(ptr, "who", 3); // copy 3 chars from the character literal "who" to ptr
std::cout << array << std::endl;
相关文章:
- Mongodb c++驱动程序:如何查询元素的数组
- 将数组的地址分配给变量并删除
- 从C++本机插件更新Vector3数组
- lambda参数转换为constexpr技巧,然后获取带链接的数组
- 将数组作为参数传递给函数安全吗?作为第三方职能部门,可以探索他们想要的之外的其他元素
- 数组索引的值没有增加
- 将对象数组的引用传递给函数
- 为char数组调整zlib-zpipe
- 2D数组来自文本输入,中间有空格
- std::向量与传递值的动态数组
- 在c++中用vector填充一个简单的动态数组
- 使用strcpy将char数组的元素复制到另一个数组
- 使用指针从C++中的数组中获取最大值
- 指针变量 在数组中定位零
- C++中三维数组的解定位
- 将 std::vector 的缓冲区替换为错误定位的字符数组
- 修改指针后,在c++中取消数组的定位器
- 在数组、流和字符比较中定位
- 将2D数组错误定位为参数会导致内存转储
- 在OpenGL中定位一个对象数组