Я вот задумался над очень банальной вещью. Если я пишу for(int i=x; i < x + width; i++) то оптимизатор вычислит x+width до начала цикла, или будет складывать каждую итерацию? Аналогично с i < strlen(s). В последнем случае допускается возможность динамического изменения длины строки (в пределах выделенной заранее памяти). Если он вычислит это заранее, то будут ошибки. Как он может понять, что переменная не изменяется в ходе работы цикла, особенно если изменение идет из совершенно другого места программы, или даже косвенное изменение через указатель? Т.е. я всегда обязан писать end_x = x + width до цикла, т.к. оптимизатор не может гарантировать, что width не изменится и цикл будет его много раз складывать.

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

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

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

Ответ на:
комментарий
от Die-Hard

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

Ответ на:
комментарий
от Die-Hard
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от Die-Hard
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от alexsaa
Ответ на:
комментарий
от xydo

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

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

Ответ на:
комментарий
от Die-Hard

Ответ на:
комментарий
от Eshkin_kot
Ответ на:
комментарий
от Die-Hard
Ответ на:
комментарий
от alexsaa
Ответ на:
комментарий
от Die-Hard
Ответ на:
комментарий
от alexsaa

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

Ответ на:
комментарий
от isden
Ответ на:
комментарий
от Die-Hard
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.