2015-04-06 239 views
0

我想在C++中創建一個程序,我需要在字符數組的末尾添加一個字符。在java中它會是這個樣子:如何將字母添加到字符數組的末尾?

arr[arr.length] = 'C'; 

str += "C"; 

,但我怎麼能增加一個字符的結束和字符的現有陣列?任何幫助是極大的讚賞。

+0

如果你想操作字符串,使用'std :: string'而不是'char []'。如果您想了解C++中的數組,請創建一個更長的數組,然後複製內容並添加新元素。 (我似乎是這裏唯一認爲在將它們委託給標準容器之前學會使用數組非常重要的人之一。) – Beta

回答

5

由於您使用C++使用std:string。然後它按預期工作。

std::string s("a test string"); 
s += " with appended data"; 

OR 

std::string s("a test string"); 
s += '!'; // Append single character 
+0

謝謝,這很有幫助 – pokeyOne

3

如果你想要的東西,模型的字符串,然後你會使用std::string不是數組,而你不喜歡

s += 'C'; 

一些地方sstd::string。例如,

#include <string> 

int main() 
{ 
    std::string s = "abcdefgh"; 
    s += 'C'; 
} 

如果你想要更多的東西一樣的char一個緩衝區,可以使用std::vector

std::vector<char> v = {'a', 'b', 'c'}; 

可以使用push_back()元素添加到末尾:

v.push_back('C'); 
+0

謝謝,這有幫助。 – pokeyOne

5

重要提示:陣列的大小是固定的。

也許你想使用std::string

std::string yourString = "..."; 
yourString += 'C'; 

如果您確實需要C風格字符串(類似於char數組),請使用.c_str()

yourString.c_str(); 
相關問題