我正在嘗試編寫一個存儲char名稱數組的程序。C++ char *錯誤,程序崩潰
這是我的代碼
#include <iostream>
#include <string.h>
using namespace std;
char **names;
char *input_name;
int main() {
names = new char*[10];
for(int i=0; i<10; i++){
names = new char[60];
cout << "Input name" << i << ": \n";
cin >> input_name;
strcpy(names[i],input_name);
cout << names[i] << "\n";
}
return 0;
}
首先我收到cannot convert ‘char*’ to ‘char**’ in assignment names = new char[60];
錯誤。
而且,得到invalid conversion from ‘char’ to ‘const char*’ [-fpermissive] strcpy(names[i],input_name);
錯誤
我將不勝感激,如果有人可以修改我的代碼,並幫助我
感謝
不應該'names = new char [60];'be'names [i] = new char [60];'?其他錯誤是前一個錯誤的副作用。 – alvits 2014-10-28 22:08:00
如果名稱超過59個字符,祝你好運。 – PaulMcKenzie 2014-10-28 22:11:10
@alvits謝謝:),但我仍然在輸入方面出現錯誤。我的代碼在IDEOne上 - http://ideone.com/PAMwgw – user4167396 2014-10-28 22:11:32