我正在写一个类的c + +应该添加一个字符串指针到一个数组。而不是添加一个指向字符串的指针我只是将第一个字符添加到数组中,但我希望能够在之后调用整个字符串。如何将字符串的指针添加到列表中,以便我可以打印出整个字符串?使C++中的字符串指针和数组的指针
class Listptr{
public:
Listptr();
void append(char *item);
private:
int size = 5;
char * buffer;
};
Listptr::Listptr(){
buffer = (char*)malloc(size);
for(int i=0; i<size; i++){
buffer[i] = NULL;
}
}
void Listptr::append(char *item){
for(int i=0; i<size; i++){
if(buffer[i] == NULL){
buffer[i] = *item;
break;
}
}
for(int i=0; i<size; i++){
cout << " " << buffer[i];
}
}
int main() {
Listptr test;
char val[] = "test";
char val2[] = "test2";
test.append(val);
test.append(val2);
}
选择C++。 'std :: vector'是你的朋友反对UB&内存泄漏。 –
'class Listptr {''Listptr :: Listptr(){'这显然是C++代码;请不要将C++代码标记为C. –
是不是有没有使用'std :: string'的原因? –