ExpertiDict

C · Essencial · Inglês · Técnico

segmentation fault

/ˌsɛɡ.mɛnˈteɪ.ʃən fɔlt/substantivo

Erro em tempo de execução em que o sistema encerra o programa por acesso inválido à memória, como desreferenciar NULL ou escrever fora de um array.

Onde usar

É a mensagem mais comum quando um programa C quebra. O primeiro passo é rodar no gdb ou com AddressSanitizer para achar a linha do acesso inválido.

Em código

int main(void) {
  int *p = NULL;
  *p = 1; // geralmente: segfault
}

Exemplos

The program died with a segmentation fault.

O programa morreu com um segmentation fault.

Run it under gdb to see where the segmentation fault happens.

Rode no gdb para ver onde acontece o segmentation fault.

Cuidado

Presumir que a linha do crash é a linha do bug: a corrupção costuma acontecer bem antes.

Sinônimos

segfault

Veja também

Todos os termos de C