在创建汇编代码时,为什么gcc编译器将while循环转换为do-while构造?我知道任何while循环都可以重写为do-while,例如在c中
while (test) { ... }
可以改写成
if ( !test ) goto skip; do { . . . } while ( test ); skip:
c x86 assembly gcc
assembly ×1
c ×1
gcc ×1
x86 ×1