다음 함수에서부울 결과에 Char 및 부울 표현식 결과가 추가 되었습니까?
진술 문 s[i] + s[i] == c;
은 0 또는 1 (부울 결과)이됩니다.
내 질문 : 위의 표현식을 부울 표현식으로 변환 하시겠습니까? s[i]
의 가치를 고려하고 있습니다.
void func(char s[], int c)
{
int i, j;
for (i = j = 0; s[i] != '\0'; i++)
if (s[i] != c)
s[j++] = s[i] + s[i] == c;
s[j] = '\0';
}
C에는'bool' 유형 (def)이 있는데,'stdbool.h '에'_Bool'로 정의되어 있습니다. 그러나'=='연산자의 결과는 'int'이며 'bool'이 아닙니다. –
@R ..'_Bool'은 C99에서 사용할 수 있으며 C의 다른 방언이 사용되는 경우에는 사용할 수 없다는 점에 유의해야합니다. Objective-C (C의 엄격한 상위 집합)에는'BOOL'이 있습니다. –
@R .. : 네, 맞습니다. 내가 갱신하자. –