Logo Hardware.com.br
Bit0N3
Bit0N3 Cyber Highlander Registrado
14.5K Mensagens 3.4K Curtidas
#7 Por Bit0N3
14/08/2015 - 12:10
cyberfoca disse:
em c/c++

main (void){
for (meta = integer; meta = 0; meta++);
meta = meta * 2;
}


esse código ai ta errado, vai dar erro de compilação

em C o que resolveria isso neste contesto metas do brasil é


int main(void)
{
int meta;
for (meta=0;meta<meta+1;meta++)
{
meta = meta * meta;
printf("sua meta é %d\n", meta);
}
}


ele vai subir e tentar dar um stack overflow mas como a proteção de memoria vai intervir vai sair um lance assim o resultado infinitamente.

sua meta é 833855396
sua meta é -833855399
sua meta é 833855396
sua meta é -833855399
sua meta é 833855396
sua meta é -833855399
sua meta é 833855396
sua meta é -833855399
sua meta é 833855396
sua meta é -833855399
sua meta é 833855396
sua meta é -833855399
sua meta é 833855396
sua meta é -833855399
sua meta é 833^C
[ice2642@localhost Documentos]$

se fosse outro lugar a meta ficaria


int main(void)
{
int meta;
for (meta=0;meta<meta+1;meta++)
{
meta = meta + meta;
printf("sua meta é %d\n", meta);
}
}


resultado
sua meta é 0
sua meta é 2
sua meta é 6
sua meta é 14
sua meta é 30
sua meta é 62
sua meta é 126
sua meta é 254
sua meta é 510
sua meta é 1022
sua meta é 2046
sua meta é 4094
sua meta é 8190
sua meta é 16382
sua meta é 32766
sua meta é 65534
sua meta é 131070
sua meta é 262142
sua meta é 524286
sua meta é 1048574
sua meta é 2097150
sua meta é 4194302
sua meta é 8388606
sua meta é 16777214
sua meta é 33554430
sua meta é 67108862
sua meta é 134217726
sua meta é 268435454
sua meta é 536870910
sua meta é 1073741822
sua meta é 2147483646
[ice2642@localhost Documentos]$

ele vai parar quando o endereçamento do int estourar.
Recomendação: Lord of the rings online MMORPG SHow de bola, roda no fedora pelo lutris.
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal