Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Danilo Penin

Falha de Segmentacao 

Recommended Posts

Fiz esse programa em C que cria e escreve alguma coisa num arquivo, mas ele encerra com "Falha de Segmentacao", mas ele executa normalmente, cria o arquivo e escreve nele. Debuguei ele com o gdb do linux, o erro acontece depois do return(0) do main, aonde teoricamente nao tem mais nada para fazer... O que e por que esta dando esse erro de Falha de Segmentacao?

 

#include <stdio.h>
#include <unistd.h>

short sEscreve_Arquivo(char *szLinha){
  FILE *fpArquivo = NULL;
  char szNomeArq[20] = {0};
  int iRes = 0;

  sprintf(szNomeArq, "%s", "arquivo.txt");

  iRes = access(szNomeArq, F_OK);
  if(iRes == 0){
	fpArquivo = fopen(szNomeArq, "at");
	if(fpArquivo == NULL){
	  return(-1);
	}

	fputs(szLinha, fpArquivo);
	fclose(fpArquivo);
  }
  else{
	fpArquivo = fopen(szNomeArq, "wt");
	if(fpArquivo == NULL){
	  return(-1);
	}

	fputs(szLinha, fpArquivo);
	fclose(fpArquivo);
  }
  return(0);
}

int main(){
  char *szTeste;
  sprintf(szTeste, "%s", "Teste\n");
  sEscreve_Arquivo(szTeste);
  return(0);
}

Grato.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.