我不经常用 C 语言编写,遇到了一些麻烦。对于初学者,我想我确信我将从文本文件中读取的行正确地放入二维数组中。当我尝试将线放入数组时,我也遇到了问题。我收到一个警告,即赋值从没有强制转换的指针中生成整数。我希望它是一个字符,我认为这就是我得到 Seg Fault 的原因,因为它大于我分配的大小。我在下面包含了我的代码。我敢打赌这是一个愚蠢的错误,我有一段时间没有使用 C,谢谢!
#include <stdio.h>
FILE *fid;
char line[70];
char dna[66800][70];
main() {
int counter = 0;
fid = fopen("dna.fna","r");
while(fgets(line, sizeof(line), fid) != NULL){
//fputs ( line, stdout );
dna[counter][0] = line; //Getting a Seg Fault here
counter++;
}
fclose(fid);
}