添加mysql客户端库时发生分段错误

时间:2014-01-06 11:15:52

标签: c mysql

#include<stdio.h>
#include<stdlib.h>
#include<mysql/mysql.h>
int main()
{
  char *tempry;
  tempry =  (char *) malloc(20*sizeof(char));
  sprintf(tempry,"hello");
  printf("\n%s\n",tempry);
  /* Here i can use mysql connectivity code */
  return 0;
}

当我使用这个gcc test.c -o test -g gcc编译命令时,它会给我输出

hello

如果我使用此gcc -I/usr/local/include -L/usr/lib64/mysql -lmysqlclient test.c -o test -g行,那么它会在此行中显示segmenation fault error

tempry =  (char *) malloc(20*sizeof(char));

1 个答案:

答案 0 :(得分:0)

检查您的mysql_real_connect()。您可能会将NULL值传递给mysql_real_connect()

mysql_init()失败时返回NULL。然后你可以将这个NULL传递给mysql_real_connect(),这样就会导致segmentation fault

mysql_init() Reference page