명세서에서 연산자를 생략하면 다음과 같습니다 : while(foo)
컴파일러가 while(foo != NULL || *foo != '\0' || foo != 0)
또는 while(!foo)
또는 이와 비슷한 형식으로 컴파일러를 설정합니까?컴파일러는 while (foo)를 어떻게 번역합니까?
어떻게 실제로 할 수 있습니까?
명세서에서 연산자를 생략하면 다음과 같습니다 : while(foo)
컴파일러가 while(foo != NULL || *foo != '\0' || foo != 0)
또는 while(!foo)
또는 이와 비슷한 형식으로 컴파일러를 설정합니까?컴파일러는 while (foo)를 어떻게 번역합니까?
어떻게 실제로 할 수 있습니까?
while (condition)
은 0이 아닌지 확인합니다. condition
은 0이 아닙니다.
while (foo)
while (foo != 0)
NULL, '\ 0'0 기능적으로 동일하며, 그들 만이 다른 유형에 사용하고 있습니다. foo는 포인터 인 경우
foo
이 그렇다면, 예를 들어, int로는, while (foo)
는 while (foo)
는 컴파일러는 않았지만, 그 foo는 점에 값을 확인하지 등 while (foo!=NULL)
을 의미 while (foo!=0)
을 의미한다.
어셈블리 코드 생성 또는 의미에 대해 묻고 있습니까? – lvella