【发布时间】:2020-07-18 15:29:15
【问题描述】:
我正在从文本文件中读取并接收字符串并将它们放入两个单独的数组中。例如: TargetArr[1] 和 TypoArr[1] 是对的。我需要能够查看字符串中的每个字母,所以我尝试将它们转换为 char 数组。我想要两个 char 数组。我的代码给了我一个段错误,它来自我试图创建 char*[] 并将字符串转换为 char 数组时。不知道我在这里做错了什么。我试图在我的普通数组中获取第一个字符串,使其成为一个 char 数组,然后放入我的 char 数组数组中。
if (myfile.is_open()){
for(int i=0; i<num; i++){
getline(myfile,targetArr[i]);
getline(myfile,typoArr[i]);
getline(myfile,skip);
}
}
char* targetCArr[num+1];
char* typoCArr[num+1];
for(int i=0; i<num; i++){
strcpy(targetCArr[i], targetArr[i].c_str());
strcpy(typoCArr[i], typoArr[i].c_str());
}
【问题讨论】:
-
Rubber ducky 想知道
targetCArr[i]处的数组在strcpy(targetCArr[i], targetArr[i].c_str());中的大小 -
一个字符串是一个字符数组。你不需要转换任何东西