1、下面程序为什么运行会出错?当我把for循环改为for(int i=0;f!='\n';i++)救正确了?
CFile m_CharFile;
char f;
char m[20]; // 存放读到的字符
m_CharFile.Read(&f,sizeof(char));
for(int i=0;f!=EOF,,i++)
{
m[i]=f;
m_CharFile.Read(&f,sizeof(char));
}
cf.Close();
AfxMessageBox(m);2、第二个问题等下再问!
CFile m_CharFile;
char f;
char m[20]; // 存放读到的字符
m_CharFile.Read(&f,sizeof(char));
for(int i=0;f!=EOF,,i++)
{
m[i]=f;
m_CharFile.Read(&f,sizeof(char));
}
cf.Close();
AfxMessageBox(m);2、第二个问题等下再问!
i = 0; i < m_CharFile.GetLength(); i++或
i < strlen( m )
~~~~
CStdioFile cf;
cf.Open("c:\\abc.txt",CFile::modeReadWrite);
char str,strRead[100];
memset( strRead, sizeof(strRead) * 100, 0 );
cf.Read(&str,sizeof(char));
for(int i=0;str!=EOF;i++)
{
strRead[i]=str;
cf.Read(&str,sizeof(char));
}
cf.Close();
AfxMessageBox(strRead);
for(int i=0; 0 != cf.Read(&str,sizeof(char)); i++)
{
strRead[i]=str;
}
另外,
memset( strRead, sizeof(strRead) * 100, 0 )有错误应该是:memset( strRead, sizeof(strRead), 0 );因为 sizeof(strRead) == 100 为 TRUE
试试