Вопрос: должен ли компилятор пытаться преобразовать for(i = 0; i < strlen(str); i++) во что-нибудь вида for(i = 0; str[i]; i++) ? Я считаю, что не должен - даже если видно, что операторы внутри цикла не изменяют длину строки (и строка не volatile). Если пользователю охота превратить линейную сложность в квадратичную - его право. А дело компилятора - выдать предупреждение. "Вы вот здесь поставили strlen, а он не нужен. Потрудитесь убрать, а то вдруг будете компилировать другим компилятором, а он такого не скажет."


Ответ на:
комментарий
от pacify


Ответ на:
комментарий
от Sikon
Ответ на:
комментарий
от Sikon

Ответ на:
комментарий
от svu
Ответ на:
комментарий
от anonymous

Ответ на:
комментарий
от svu
Ответ на:
комментарий
от svu

Ответ на:
комментарий
от MYMUR
Ответ на:
комментарий
от Legioner

Ответ на:
комментарий
от svu

Ответ на:
комментарий
от Sikon

Ответ на:
комментарий
от xTERM
Ответ на:
комментарий
от xTERM
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от xTERM
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от xTERM
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от anonymous

Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от Sikon
Ответ на:
комментарий
от xTERM
Ответ на:
комментарий
от blaster999

Ответ на:
комментарий
от anonymous

Вы не можете добавлять комментарии в эту тему: топик перемещен в архив.