VS2019警告 C6387

0

这个挺离谱的,原本写好了之后,我把警告全改好了,没有一点问题,昨天再运行的时候就突然蹦出来这种问题,刚刚看的时候又发现没问题了.......

警告 C6387  “fp”可能是“0”: 这不符合函数“fgetc”的规范。 

警告 C6387  “fp”可能是“0”: 这不符合函数“fclose”的规范。 

int GetMusicNum(char str[])
{
	FILE* fp = nullptr;
	char ch = NULL, temp_str[200];
	int music_num = 0;
	int m = 0, n = 0;

	strcpy_s(temp_str, sizeof(temp_str) / sizeof(temp_str[0]), str);
	strcat_s(temp_str, sizeof(temp_str) / sizeof(temp_str[0]), "\\musiclist");

	if (fopen_s(&fp, temp_str, "rb"))
	{
#ifdef _DEBUG
		printf("Read Path ERROR\n");
#endif // _DEBUG

		exit(0);
	}

	//每读到一个‘\n’歌曲数量++
	while ((ch = fgetc(fp)) != EOF)
	{
		if (ch == '\n')
		{
			music_num++;
		}
	}

	fclose(fp);
	return music_num;
}
ava
慢热友人.

2020-8-24

0

这应该是你前面的代码有问题。

请帖出来完整的可编译的代码。(删掉无关代码)

ava
慢羊羊

2020-8-24

现在又没有问题了,警告全没了.......我昨天一点代码也没改 - 慢热友人. 2020-8-25
@慢热友人. 你可以试试 Rebuild,可能警告又会出来。 - 慢羊羊 2020-8-25
@慢羊羊 Rebuild是解决方案资源管理器->右键项目名->重新生成 ?我试了,还是没有警告 - 慢热友人. 2020-8-25
@慢热友人. 没警告就好。Rebuild 要是没事就没事了。 - 慢羊羊 2020-8-25
@慢羊羊 好的,谢谢 - 慢热友人. 2020-8-25
热门标签
相关问题