我正在尝试printf
用字符串值替换所有语句。因此,首先,我将所有行读取到一个字符串中,如下所示:
ifstream ifs;
ifs.open(filename);
string temp;
string text;
while(!ifs.eof())
{
getline(ifs, temp, '\t');
text.append(temp);
temp.clear();
}
然后我找到每一行printf
,如果它找到,而不是用"printf statement"
.
我的替换代码printf
:
char ch;
while(getline(is,check))
{
ch=check[0];
if(!isalpha(ch))
{
//statements..
}
else
{
string str2("printf");
size_t found;
found=check.find(str2);
if(found!=string::npos)
check="\n printf statement.\n";
OriginalStr.append(check);
check.clear();
}
它适用于三个四行文件,如下所示:
main()
{
Hi i am Adityaram.
and i am good boy.
and you?
printf("");
{
printf("");
Aditya
printf("");
Rammm
printf("");
Kumar
printf("");
{
printf("");
printf("");
}
printf("");
}
printf("");
但在这些文件行中找不到 printf 行。
main()
{
char ch, file_name[25],*p;
char answer[400];
int size=0;
FILE *fp;
printf("Enter the name of file you wish to see ");
gets(file_name);
}
为什么找不到 printf 行?或者怎么办?任何建议将不胜感激。