当前位置:  技术问答>linux和unix

在编写mysql连接时遇到这个奇怪的connect问题,麻烦大家帮我看 :)

    来源: 互联网  发布时间:2015-11-21

    本文导语:  我在编简单的mysql数据库连接的函数实现,代码如下: /*trysql.c*/ #include  #include  int connect(); int main() { connect(); return 0; } int connect() {    MYSQL mysql;     // need a instance to init    mysql_init(&mysql);    printf("init fini...

我在编简单的mysql数据库连接的函数实现,代码如下:
/*trysql.c*/
#include 
#include 
int connect();
int main()
{
connect();
return 0;
}
int connect()
{
   MYSQL mysql;     // need a instance to init
   mysql_init(&mysql);
   printf("init finished!n");
   if (!mysql_real_connect(&mysql,"localhost", "root", NULL, "grid",0,NULL,0))
   {
       printf( "Error connecting to database: %sn",mysql_error(&mysql));
   }
   else printf("Connected...n");
   mysql_close(&mysql);
   return 0;
}
编译命令:gcc trysql.c -I /usr/include/mysql -L /usr/lib/mysql -lmysqlclient
结果很奇怪,是无数行的init finished!和Error connecting to database:,

而当把函数名改为其他名子如test之类就没有问题正常显示无法连接数据库(数据库并没有开,只是试一下),

难道connect在linux编程中有什么特殊含义吗.

麻烦大家帮我看看,多谢!



|
写简单了:)
接口是指API接口的实现,包括socket、accept、listen、connect、bind等等,linux上这些API函数都在libc里,所以任何定义了同名函数的C程序都会导致冲突,就象你的connect函数。
在solaris系统上,socket API接口函数是在一个独立的库libsocket里,所以如果你不使用socket接口,不连接libsocket,你的应用里就可以有自己connect函数定义,当然可移植性就不好了。

|
connect是socket里面的连接函数。

|
是的
socket里面有

|
Linux的socket接口在libc里,所以会出错。有些系统socket接口是独立的库,所以没有问题。

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 编写 linux shell 有什么好的编写工具呢?
  • VB编写的DLL不能被JAVA调用,用C将VB编写的DLL包装起来,做成一个新的DLL;用C编写的DLL可以被JAVA调用,用JAVA再进行一层的包装,因为JAV
  • 用Qt3.1.4编写的程序,如何加入自己编写的另外一个动态库呀?诚恳指教!!
  • 如图 scsi <---> scsi controller <---> pci <---> cpu 如果我想对scsi编写驱动我该对哪个部分编写?
  • 用什么工具编写JSP,可以象用InterDev编写ASP一样方便快捷?
  • 编写程序如编写人生,有人和我的意见相同吗?
  • 请问用jsp编写程序,非要编写代码么?有没有什么象fontpage2000那样的工具,能够生成一些固定模板的工具?就是说不用全部都写的工具。望
  • 用jsp编写web程序到底和java serverlet编写web程序有和区别
  • socket中,从client端(用java编写的)传到server端(用c编写的)的字符串为何总多一个ASCII码为10的字符呀?
  • 如何用java编写一个NT平台下的标准服务?
  • 关于用vj编写sniffer一问。
  • Linux下如何编写脚本文件
  • java能不能编写单独运行的程序?
  • Linux有没有类似bat文件,如何编写。
  • 用JAVA编写COM组件
  • 关于版本和bug管理的rule(规则)的编写
  • 在windows下可以用Code::Blocks编写linux程序吗?
  • 函数互相调用时Makefile编写
  • javascript开源软件 iis7站长之家
  • AIX下如何编写批处理命令和计划任务


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3