将字符数组附加到字符串c

前端之家收集整理的这篇文章主要介绍了将字符数组附加到字符串c前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个256个字符的字符数组或char myArray [256]只有第一对实际拥有任何信息
myArray[0] = 'H';
myArray[1] = 'E';
myArray[2] = 'L';
myArray[3] = 'L';
myArray[4] = 'O';
myArray[5] = NULL;
myArray[6] = NULL;
// etc...

我不一定确切地知道数组中的内容,但我想将那里的内容(减去空字符)复制到我的缓冲区字符串字符串缓冲区中

我认为这样做的恰当方法是执行以下操作:

buffer.append(myArray);

一旦遇到一个零字符,程序就会停止读取值,但我没有看到这种行为.我看到它将整个数组复制到我的缓冲区,空字符和所有.这样做的正确方法是什么?

编辑:一些工作代码,使其更容易

#include <string>
#include <iostream>

using namespace std;

int main()
{
    string buffer;
    char mychararray[256] = {NULL};

    mychararray[0] = 'H';
    mychararray[1] = 'e';
    mychararray[2] = 'l';
    mychararray[3] = 'l';
    mychararray[4] = 'o';

    buffer.append(mychararray);

    cout << buffer << endl;

    return 0;
}

刚刚意识到我没有正确初始化null并且我的原始方式有效.很抱歉浪费你的时间.

解决方法

试试吧
buffer += myArray;

应该这样做.如果null终止数组,append也应该有效.

猜你在找的C&C++相关文章