单选题:如下代码可能产生的错误有。
unsigned long HMS_GetTotalDiskVolume(void)
{
FILE *fp = NULL;
fp = fopen("/etc/mtab","r");
while(fp && (fs_entry = getmntent(fp)))
{
…
}
fclose(fp);
return (uTotalDiskVol );
}
A. 每次打开文件都失败,返回错误
B. 陷入死循环,无法退出
C. 如果文件打开不成功,造成释放空指针,导致core。
D. 以上都不是
答案:C
函数中打开的系统资源如内存或文件等一定要判断是否成功,并及时关闭
阅读(345) | 评论(0) | 转发(0) |