Remember to maintain security and privacy. Do not share sensitive information. Procedimento.com.br may make mistakes. Verify important information. Termo de Responsabilidade
O Address Sanitizer (ASan) é uma ferramenta poderosa utilizada para detectar erros de memória em programas C/C++. Ele ajuda a identificar problemas como estouros de buffer, uso após liberação de memória, entre outros. No ambiente Apple, o Address Sanitizer está integrado ao Xcode, tornando-o uma ferramenta acessível para desenvolvedores que utilizam macOS.
1. Abra o Xcode: Inicie o Xcode e abra o projeto que você deseja analisar.
2. Selecione o esquema de execução: No canto superior esquerdo, ao lado do botão de execução, clique no nome do esquema e selecione "Edit Scheme" (Editar Esquema).
3. Habilite o Address Sanitizer:
4. Execute o projeto: Com o Address Sanitizer habilitado, execute o projeto. O Xcode irá compilar o código com o ASan e, durante a execução, qualquer problema de memória detectado será reportado no console.
#include <stdio.h>
#include <stdlib.h>
int main() {
int *array = (int *)malloc(5 * sizeof(int));
for (int i = 0; i <= 5; i++) { // Erro: acesso fora dos limites do array
array[i] = i;
}
free(array);
return 0;
}
Ao executar o código acima com o Address Sanitizer habilitado, você deverá ver uma mensagem de erro indicando que houve um acesso fora dos limites do array.
Além do Address Sanitizer, o Xcode oferece outras ferramentas de análise de código, como o Thread Sanitizer para detectar condições de corrida e o Undefined Behavior Sanitizer para identificar comportamentos indefinidos. Essas ferramentas também podem ser habilitadas na seção "Diagnostics" do esquema de execução.