问一个神奇的有关问题, 关于printf字符串
问一个神奇的问题, 关于printf字符串
我从文件中按行读取字符串
while(1) {
if (fgets(rawLine, MAX_LINE_SIZE, yyin) == NULL) {
return -1;
}
else {
//- make sure the line is terminated
if (rawLine[strlen(rawLine)-1] != '\n ') {
rawLine[strlen(rawLine)] = '\n ';
rawLine[strlen(rawLine)+1] = '\0 ';
}
printf( ":::%d\t\t%s ",strlen(rawLine), rawLine);
break;
}
}
本来程序很好用的, 但是今天下午解析一个两万多行的文件时,突然有了个段错误:
要读入的文件在3000多行的位置是这些数据:
//////////////////////////////////////////////////////////////////////////////
// Code Area //
//////////////////////////////////////////////////////////////////////////////
// Global Registers //
// ---------------- //
// r10 flag_reg //
// r9 fifo //
我从文件中按行读取字符串
while(1) {
if (fgets(rawLine, MAX_LINE_SIZE, yyin) == NULL) {
return -1;
}
else {
//- make sure the line is terminated
if (rawLine[strlen(rawLine)-1] != '\n ') {
rawLine[strlen(rawLine)] = '\n ';
rawLine[strlen(rawLine)+1] = '\0 ';
}
printf( ":::%d\t\t%s ",strlen(rawLine), rawLine);
break;
}
}
本来程序很好用的, 但是今天下午解析一个两万多行的文件时,突然有了个段错误:
要读入的文件在3000多行的位置是这些数据:
//////////////////////////////////////////////////////////////////////////////
// Code Area //
//////////////////////////////////////////////////////////////////////////////
// Global Registers //
// ---------------- //
// r10 flag_reg //
// r9 fifo //