0
는 동일하지 않다 :fgets는 무엇을합니까?
fgets (answer, 256, stdin);
if (strncmp(answer, "sta", 4) == 0)
printf("omg, it's equal");
이 코드는 다음과 같습니다
fgets (answer, 4, stdin);
if (strncmp(answer, "sta", 4) == 0)
printf("omg, it's equal");
이유는 무엇입니까? 그것은 첫 번째 대답은 4 번째 장소에서 \ 0을 가지지 않기 때문입니다 (4 대신 3으로 변경하면 작동합니다). 하지만 fgets는 무엇을합니까? 첫 번째 문자열 대답은 str \whitespace*253\0"
입니까? 그리고 두 번째로는 str\0
입니까? 고맙습니다.