fscanf返回的是实际读取的数据个数,出错或者到结尾返回EOF。
char szBuf[512];
GetModuleFileName( NULL, szBuf, 512 );
*strrchr( szBuf, '//' ) = '/0';
*strrchr( szBuf, '//' ) = '/0';
strcat( szBuf, "//Lib//Image.lib" );
FILE *fp=fopen( szBuf, "rt" );
int nImageType=-1, t=0;
while ( fscanf( fp, "%d%d%s", &t, &nImageType, szBuf ) == 3 )
{
m_cbImageType.AddString( szBuf );
}
m_cbImageType.SetCurSel(2);
函数原型:
DWORD GetModuleFileName(
HMODULE hModule,
LPTSTR lpFilename,
DWORD nSize
);
函数参数说明:
hModule HMODULE 装载一个程序实例的句柄。如果该参数为NULL,该函数返回该当前应用程序全路径。
lpFileName LPTSTR 是你存放返回的名字的内存块的指针,是一个输出参数
nSize DWORD ,装载到缓冲区lpFileName的最大值
*strrchr(szBuf,‘//’)返回找到‘//’的值,并将该值赋为后边的值,在这里是赋为'/0',即清空。
strcat是将szBuf与后边的值连接起来。