char cc[] = "qwerty";
bool b1 = strchr(cc, 'a');
bool b2 = (strchr(cc, 'a') != 0);
bool b1 = strchr(cc, 'a');
00352774 push 61h
00352776 lea eax,[ebp-10h]
00352779 push eax
0035277A call strchr (351177h)
0035277F add esp,8
00352782 test eax,eax
00352784 setne cl
00352787 mov byte ptr [ebp-19h],cl
bool b2 = (strchr(cc, 'a') != 0);
0035278A push 61h
0035278C lea eax,[ebp-10h]
0035278F push eax
00352790 call strchr (351177h)
00352795 add esp,8
00352798 neg eax
0035279A sbb eax,eax
0035279C neg eax
0035279E mov byte ptr [ebp-25h],al
На выражение первого типа компилятор дает варнинг, что мол повлияет на производительность. Так ли он прав?