파일에서 벗어나는 줄에서 float (및 이후의 ints)을 읽으 려합니다. 내가 디버깅 할 때, 파일에서 아무런 문제가없는 줄을 볼 수 있지만, 문제가 생길 때 쓰레기가 나옵니다. 내 코드는 다음과 같습니다.sscanf에 대한 혼동
while(fgets(line, 1000, file) != EOF)
{
//Get the first character of the line
c = line[0];
if(c == 'v')
{
sscanf(line, "%f", &v1);
printf("%f", v1);
}
}
v1에 저장된 값은 가비지입니다. 이것이 작동하지 않는 이유는 무엇입니까? 어떻게이 행에서 부유물과 int를 얻을 수 있습니까?
Perfect에 라인 [1]을 보내면 내 sscanf 문제가 해결됩니다. 감사! – Jeff
그리고 v1은 초기화되지 않았기 때문에 쓰레기였습니다. sscanf가 실제로 인자를 초기화했는지 확인하십시오. if (sscanf (line + 1, % f ", & v1))! = 1) {// error}' – nos