Вот небольшой фрагмент кода: ktmp=0; PultFlag=4; for(pult=0;pult<3;pult++) ktmp|= ((PultFlag&(0x01<<pult)))?(1<<pult):0; ktmp=0; PultFlag=5; for(pult=0;pult<3;pult++) ktmp|= ((PultFlag>>pult)&0x01)?(1<<pult):0; Если уровень оптимизации по скорости минимален или вооще нет, то все хорошо, но как только делаю уровень оптимизации High, то в первом цикле перестает вычисляться ktmp. Поэтому вопрос: в какой степени компилятор наплевательски относится к написанному коду при оптимизациях? Как с этим обстоят дела в более поздних версиях компилятора. Я так полагаю, что не стоит полагаться на оптимизацию компилятора, надо самому грамотно писать программу.
|