Jaka jest kolejność oceny instrukcji w nawiasach if, jeśli (…)? [duplikować
To pytanie ma już odpowiedź tutaj:
Czy operatorzy logiczni zwarci są zobowiązani? A kolejność oceny? 7 odpowiedzi Obawy dotyczące bezpieczeństwa związane z oceną zwarcia [duplikat] 4 odpowiedziMam wskaźnik char zainicjowany na NULL na początku programu, w dalszej części programu char * jest używany w wywołaniu funkcji, gdzie może zostać wskazany ciąg znaków char i może wskazywać na znak null, i to może pozostać nietknięty. Tak więc poniższe stwierdzenie jest poprawne, powinno być tak, jeśli wyrażenia są oceniane od lewej do prawej. Jeśli nie wtedystrlen (charpointer) jest niezdefiniowanym zachowaniem, jeślicharpointer == NULL
if ( charpointer == NULL || strlen ( charpointer ) == 0 )
Więc czy są one oceniane od lewej do prawej? Czy to właściwy sposób na sprawdzenie w ten sposób?