void translate(char * in_str,char * out_str) { int i=0,j=0; int flag=1; //flag为0时意味着字符位于#号之后 int blank_line=1; while (in_str[i]!=-52) { //以行为单位搜索 while(in_str[i]!='/n'&&in_str[i]!=-52) { if (in_str[i]!='#'&&flag)//不是#号且不在#号之后则输出 { out_str[j]=in_str[i]; j++; blank_line=0; } else if(in_str[i] == '#'&&flag) { if(in_str[i-1] == '"' && in_str[i+1] == '"')//是#号则判断是否被引号引起来 { out_str[j]='#'; out_str[++j]='"';//将#号和引号输出 i++; j++; blank_line=0; } else flag = 0;//#号标识的注释开始 } i++; } //一行结束 flag = 1; if(-52==in_str[i]) break; if(0 == blank_line)//如果这行有输出 { out_str[j]='/n';//输出回车 j++; } blank_line=1; i++; } }