Linux C 调用mysql API 无法通过编译 怎么回事
 11 #include <stdio.h>
12 #include <stdlib.h>
13 #include <string.h>
14 
15 #include <mysql/mysql.h>
16 
17 MYSQL *g_conn; // mysql 连接
18  MYSQL_RES *g_res; // mysql 记录集
19  MYSQL_ROW g_row; // 字符串数组,mysql 记录行
20  
21 #define MAX_BUF_SIZE 1024 // 缓冲区最大字节数
22 
23 const char *g_host_name = "localhost";
24 const char *g_user_name = "root";
25 const char *g_password = "root";
26 const char *g_db_name = "test";
27 const unsigned int g_db_port = 3306;
28 
29 void print_mysql_error(const char *msg) { // 打印最后一次错误
30     if (msg)
31         printf("%s: %s\n", msg, mysql_error(g_conn));
32     else
33         puts(mysql_error(g_conn));
34 }
35 
36 int executesql(const char * sql) {
37     /*query the database according the sql*/
38     if (mysql_real_query(g_conn, sql, strlen(sql))) // 如果失败
39         return -1; // 表示失败
40 
41     return 0; // 成功执行
42 }
43 
44 
45 int init_mysql() { // 初始化连接
46     // init the database connection
47     g_conn = mysql_init(NULL);
48 
49     /* connect the database */
50     if(!mysql_real_connect(g_conn, g_host_name, g_user_name, g_password, g_db_name, g_db_port, NULL, 0)) // 如果失败
51         return -1;
52 
53     // 是否连接已经可用
54     if (executesql("set names utf8")) // 如果失败
55         return -1;
56 
57     return 0; // 返回成功
58 }
59 
60 
61 int main(void) {
62     puts("!!!Hello World!!!"); /* prints !!!Hello World!!! */
63 
64     if (init_mysql());
65         print_mysql_error(NULL);
66 
67     char sql[MAX_BUF_SIZE];
68     sprintf(sql, "INSERT INTO `test`(`name`) VALUES('testname')");
69 
70     if (executesql(sql))
71         print_mysql_error(NULL);
72 
73     if (executesql("SELECT * FROM `test`")) // 句末没有分号
74         print_mysql_error(NULL);
75 
76     g_res = mysql_store_result(g_conn); // 从服务器传送结果集至本地,mysql_use_result直接使用服务器上的记录集
77 
78     int iNum_rows = mysql_num_rows(g_res); // 得到记录的行数
79     int iNum_fields = mysql_num_fields(g_res); // 得到记录的列数
80 
81     printf("共%d个记录,每个记录%d字段\n", iNum_rows, iNum_fields);
82 
83     puts("id\tname\n");
84 
85     while ((g_row=mysql_fetch_row(g_res))) // 打印结果集
86         printf("%s\t%s\n", g_row[0], g_row[1]); // 第一,第二字段
87 
88     mysql_free_result(g_res); // 释放结果集
89 
90     mysql_close(g_conn); // 关闭链接
91 
92     return EXIT_SUCCESS;
93 }

[root@localhost opt]# gcc mysql.c -lmysqlclient
mysql.c:4:25: 错误:mysql/mysql.h:没有那个文件或目录
mysql.c:6: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
mysql.c:7: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
mysql.c:8: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘g_row’
mysql.c: 在函数‘print_mysql_error’中:
mysql.c:21: 错误:‘g_conn’未声明(在此函数内第一次使用)
mysql.c:21: 错误:(即使在一个函数内多次出现,每个未声明的标识符在其
mysql.c:21: 错误:所在的函数内也只报告一次。)
mysql.c: 在函数‘executesql’中:
mysql.c:29: 错误:‘g_conn’未声明(在此函数内第一次使用)
mysql.c: 在函数‘init_mysql’中:
mysql.c:39: 错误:‘g_conn’未声明(在此函数内第一次使用)
mysql.c: 在函数‘main’中:
mysql.c:63: 错误:‘g_res’未声明(在此函数内第一次使用)
mysql.c:63: 错误:‘g_conn’未声明(在此函数内第一次使用)
mysql.c:72: 错误:‘g_row’未声明(在此函数内第一次使用)

1个回答

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
linux下,c或者c++能调用js api吗
大神们,我想在linux下,使用c或者c++调用js api,可行吗?如何实现呢?
C++API函数的重定义。编译无法通过的问题。
在一个生成dll的C++工程,头文件Local.h中,有如下代码: ``` DLL IMPORT WORD WINAPI PrintScreen(HWND,WORD,WORD,WORD,LPSTR,BOOL) ``` 在c文件中也是调用的这个6各参数的函数。但是编译的时候,由于在系统API:winuser.h中,有一个3各参数的同名函数,PrintScreen,导致编译提示重定义。无法编译通过。 我想问一下,在本地中定义的这种跟系统api同名的函数,算是对系统函数的重写吗?调用的时候是怎么样的?我如何才能编译通过? 另:VS6.0同样的情况不会报错,VS2012就会报错。应该如何处理? 感谢
交叉编译freetype问题?
我在交叉编译后有些文件中的函数 前面是 FT_EXPORT_DEF( void ) FT_List_Finalize( FT_List list, FT_List_Destructor destroy, FT_Memory memory, void* user ) 导致在调用此函数时提示找不到这个文件: ![图片说明](https://img-ask.csdn.net/upload/202001/17/1579237009_408332.png) 是编译条件不对吗,如何解决? 我的编译过程: ./configure CC=/opt/hisi-linux/x86-arm/aarch64-himix100-linux/bin/aarch64-himix100-linux-gcc --host=aarch64-himix100-linux --prefix=/homefont/test/freetype --enable-shared=no --enable-static=yes make && make install
在linux生存mysql.so的时候 编译不通过
我想生成mysql。so文件让他被PHP调用 过程是这样的 1进入php源代码目录:# cd /usr/ChenShao/php-5.3.1/ 2、再进入要添加的mysql扩展源码目录:# cd ext/mysql/ 2、调用已经编译好的php里面的phpize:# /usr/local/php5/bin/phpize 3、然后configure:# ./configure --with-php-config=/usr/local/php5/bin/php-config --with-mysql=/usr/local/mysql (/usr/local/mysql 为mysql的安装目录) 然后我进行make(谢谢大家!) [root@ovz435 msql]# make /bin/sh /usr/local/php/php-5.2.17/ext/msql/libtool --mode=compile cc -I. -I/usr/local/php/php-5.2.17/ext/msql -DPHP_ATOM_INC -I/usr/local/php/php-5.2.17/ext/msql/include -I/usr/local/php/php-5.2.17/ext/msql/main -I/usr/local/php/php-5.2.17/ext/msql -I/usr/local/php/include/php -I/usr/local/php/include/php/main -I/usr/local/php/include/php/TSRM -I/usr/local/php/include/php/Zend -I/usr/local/php/include/php/ext -I/usr/local/php/include/php/ext/date/lib -I/usr/local/Hughes/include -DHAVE_CONFIG_H -g -O2 -c /usr/local/php/php-5.2.17/ext/msql/php_msql.c -o php_msql.lo mkdir .libs cc -I. -I/usr/local/php/php-5.2.17/ext/msql -DPHP_ATOM_INC -I/usr/local/php/php-5.2.17/ext/msql/include -I/usr/local/php/php-5.2.17/ext/msql/main -I/usr/local/php/php-5.2.17/ext/msql -I/usr/local/php/include/php -I/usr/local/php/include/php/main -I/usr/local/php/include/php/TSRM -I/usr/local/php/include/php/Zend -I/usr/local/php/include/php/ext -I/usr/local/php/include/php/ext/date/lib -I/usr/local/Hughes/include -DHAVE_CONFIG_H -g -O2 -c /usr/local/php/php-5.2.17/ext/msql/php_msql.c -fPIC -DPIC -o .libs/php_msql.o /usr/local/php/php-5.2.17/ext/msql/php_msql.c:38:18: 错误:msql.h:没有那个文件或目录 /usr/local/php/php-5.2.17/ext/msql/php_msql.c:117: 错误:expected specifier-qualifier-list before ‘m_result’ /usr/local/php/php-5.2.17/ext/msql/php_msql.c: In function ‘_delete_query’: /usr/local/php/php-5.2.17/ext/msql/php_msql.c:129: 错误:‘m_query’ 没有名为 ‘result’ 的成员 /usr/local/php/php-5.2.17/ext/msql/php_msql.c:129: 错误:‘m_query’ 没有名为 ‘result’ 的成员 /usr/local/php/php-5.2.17/ext/msql/php_msql.c: 在顶层: /usr/local/php/php-5.2.17/ext/msql/php_msql.c:133: 错误:expected ‘)’ before ‘*’ token /usr/local/php/php-5.2.17/ext/msql/php_msql.c: In function ‘zm_activate_msql’: /usr/local/php/php-5.2.17/ext/msql/php_msql.c:195: 错误:‘msqlErrMsg’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:195: 错误:(即使在一个函数内多次出现,每个未声明的标识符在其 /usr/local/php/php-5.2.17/ext/msql/php_msql.c:195: 错误:所在的函数内只报告一次。) /usr/local/php/php-5.2.17/ext/msql/php_msql.c: In function ‘zif_msql_query’: /usr/local/php/php-5.2.17/ext/msql/php_msql.c:583: 警告:传递参数 2 (属于 ‘zend_register_resource’)时将整数赋给指针,未作类型转换 /usr/local/php/php-5.2.17/ext/msql/php_msql.c: In function ‘zif_msql_db_query’: /usr/local/php/php-5.2.17/ext/msql/php_msql.c:625: 警告:传递参数 2 (属于 ‘zend_register_resource’)时将整数赋给指针,未作类型转换 /usr/local/php/php-5.2.17/ext/msql/php_msql.c: In function ‘zif_msql_list_dbs’: /usr/local/php/php-5.2.17/ext/msql/php_msql.c:636: 错误:‘m_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:636: 错误:‘msql_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:659: 警告:传递参数 2 (属于 ‘zend_register_resource’)时将整数赋给指针,未作类型转换 /usr/local/php/php-5.2.17/ext/msql/php_msql.c: In function ‘zif_msql_list_tables’: /usr/local/php/php-5.2.17/ext/msql/php_msql.c:670: 错误:‘m_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:670: 错误:‘msql_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:700: 警告:传递参数 2 (属于 ‘zend_register_resource’)时将整数赋给指针,未作类型转换 /usr/local/php/php-5.2.17/ext/msql/php_msql.c: In function ‘zif_msql_list_fields’: /usr/local/php/php-5.2.17/ext/msql/php_msql.c:711: 错误:‘m_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:711: 错误:‘msql_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:742: 警告:传递参数 2 (属于 ‘zend_register_resource’)时将整数赋给指针,未作类型转换 /usr/local/php/php-5.2.17/ext/msql/php_msql.c: In function ‘zif_msql_error’: /usr/local/php/php-5.2.17/ext/msql/php_msql.c:753: 错误:‘msqlErrMsg’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c: In function ‘zif_msql_result’: /usr/local/php/php-5.2.17/ext/msql/php_msql.c:762: 错误:‘m_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:762: 错误:‘msql_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:764: 错误:‘m_row’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:764: 错误:expected ‘;’ before ‘sql_row’ /usr/local/php/php-5.2.17/ext/msql/php_msql.c:783: 错误:‘m_query’ 没有名为 ‘result’ 的成员 /usr/local/php/php-5.2.17/ext/msql/php_msql.c:791: 错误:‘sql_row’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:799: 错误:‘m_field’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:799: 错误:‘tmp_field’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c: In function ‘zif_msql_num_rows’: /usr/local/php/php-5.2.17/ext/msql/php_msql.c:863: 错误:‘m_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:863: 错误:‘msql_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:870: 错误:‘m_query’ 没有名为 ‘result’ 的成员 /usr/local/php/php-5.2.17/ext/msql/php_msql.c: In function ‘zif_msql_num_fields’: /usr/local/php/php-5.2.17/ext/msql/php_msql.c:880: 错误:‘m_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:880: 错误:‘msql_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:887: 错误:‘m_query’ 没有名为 ‘result’ 的成员 /usr/local/php/php-5.2.17/ext/msql/php_msql.c: In function ‘php_msql_fetch_hash’: /usr/local/php/php-5.2.17/ext/msql/php_msql.c:897: 错误:‘m_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:897: 错误:‘msql_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:898: 错误:‘m_row’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:898: 错误:expected ‘;’ before ‘msql_row’ /usr/local/php/php-5.2.17/ext/msql/php_msql.c:899: 错误:‘m_field’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:899: 错误:‘msql_field’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:925: 错误:‘m_query’ 没有名为 ‘result’ 的成员 /usr/local/php/php-5.2.17/ext/msql/php_msql.c:926: 错误:‘msql_row’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c: In function ‘zif_msql_data_seek’: /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1004: 错误:‘m_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1004: 错误:‘msql_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1011: 错误:‘m_query’ 没有名为 ‘result’ 的成员 /usr/local/php/php-5.2.17/ext/msql/php_msql.c: In function ‘php_msql_get_field_name’: /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1030: 错误:‘INT_TYPE’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1033: 错误:‘CHAR_TYPE’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1036: 错误:‘REAL_TYPE’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1039: 错误:‘IDENT_TYPE’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1042: 错误:‘NULL_TYPE’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c: In function ‘zif_msql_fetch_field’: /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1070: 错误:‘m_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1070: 错误:‘msql_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1071: 错误:‘m_field’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1071: 错误:‘msql_field’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1089: 错误:‘m_query’ 没有名为 ‘result’ 的成员 /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1107: 错误:‘PRI_KEY_FLAG’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c: In function ‘zif_msql_field_seek’: /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1121: 错误:‘m_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1121: 错误:‘msql_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1128: 错误:‘m_query’ 没有名为 ‘result’ 的成员 /usr/local/php/php-5.2.17/ext/msql/php_msql.c: In function ‘php_msql_field_info’: /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1154: 错误:‘m_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1154: 错误:‘msql_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1155: 错误:‘m_field’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1155: 错误:‘msql_field’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1162: 错误:‘m_query’ 没有名为 ‘result’ 的成员 /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1198: 错误:‘NOT_NULL_FLAG’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1198: 错误:‘PRI_KEY_FLAG’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c: In function ‘zif_msql_free_result’: /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1282: 错误:‘m_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1282: 错误:‘msql_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1289: 错误:‘m_query’ 没有名为 ‘result’ 的成员 /usr/local/php/php-5.2.17/ext/msql/php_msql.c: In function ‘zif_msql_affected_rows’: /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1300: 错误:‘m_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1300: 错误:‘msql_result’ 未声明 (在此函数内第一次使用) /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1306: 错误:‘m_query’ 没有名为 ‘result’ 的成员 /usr/local/php/php-5.2.17/ext/msql/php_msql.c:1307: 错误:‘m_query’ 没有名为 ‘af_rows’ 的成员
C#调用C语言编写的dll问题
![图片说明](https://img-ask.csdn.net/upload/202001/03/1578046270_121254.png) 各位高手,在图片中,是C语言写的dll提供的接口说明,我不会C,但是我想用C#语言动调用C的对应接口,我可以使用DllImport 动态链接库的方式,但是对于C这个接口形式,我完全是小白,XSDK_API ,XSDK_HANDLE,CALLBACK ,分别代表什么?
beego怎么调用mysql进行增删改查?麻烦详细一点
beego怎么调用mysql增删改查?函数或者参数是什么意思?麻烦大神详细一点,多谢了!
小白求问API调用问题:postman调用api没响应?
``` http://XX.XX.XX.XX:XXXX/v1/data-rest/swagger-ui.html#!/EventDate_Service_API/getStatisDetailUsingGET ``` 各位大神,这个样子的API要怎么调用啊,用postman贴上去直接发送没响应。是哪里操作问题么。
关于JAVA中使用Runtime.getRuntime().exec() 调用Linux的mutt发送邮件
最近需要做一个在JAVA中监测目录下是否有新文件产生,如果有的话使用Linux指令发送邮件, 使用mutt发送邮件的指令如下 echo "14:07" | mutt -a /home/pi/test.jpg -- 1111111@qq.com 意思为发送内容为“14:07”,并且添加附件test.jpg发送到1111111@qq.com这个邮箱。 经过测试,这句话单独在Linux系统下运行没有问题,也成功发送接收到。 但是调用Runtime.getRuntime().exec() 的时候不行 经查找是因为使用了管道的原因,需要添加/bin/sh -c 作为脚本去执行,但是却无法成功发送。 系统反馈无法发送此邮件。 将上述的代码作为sh脚本写入运行,提示子进程已经结束,邮件发送失败。猜想是由于mutt发送需要时间较长,sh已经运行结束,导致进程提前结束无法发送成功 但是如果使用sleep的话,会造成休眠,在脚本后面加上wait也没用。。。。 再次提出问题,如何在java代码中调用Linux指令的mutt发送邮件(有管道) java代码中运行Linux指令代码如下: public static void executeLinuxCmd(String[] cmd) { InputStream in = null; String result = null; try { Process pro = Runtime.getRuntime().exec(cmd); pro.waitFor(); in = pro.getInputStream(); BufferedReader read = new BufferedReader(new InputStreamReader(in)); while((result = read.readLine())!=null) { System.out.println(result); } } catch (IOException e) { e.printStackTrace(); } catch (InterruptedException e) { e.printStackTrace(); } } 调用executeLinuxCmd的代码如下(监测部分省略,cmd指令输出过,确定正确) String path2=path + "/" + event.context() ; String cmd="echo "+"\"hello hello\""+"|mutt -a "+path2+" -- 1111111@qq.com"; String[] str={"/bin/sh","-c",cmd}; executeLinuxCmd(str); System.out.println(cmd); 监测成功创建文件,并且发送,然后显示 无法发送此信件。 echo "hello hello"|mutt -a /home/pi/this_is_test/wenjian -- 1111111@qq.com 折腾了2天了,求大佬指导一下,感激不尽
WIN10,WIN8.1中如何使用WIFI DIRECT API创建虚拟适配器
WIN10,WIN8.1中如何使用WIFI DIRECT API创建虚拟适配器,从WIN7开始取消了承载网络 改用WIFI DIRECT API,360WIFI等应用都可以创建,如何用C++代码实现? 是WINDOWS应用程序,不是ANDROID,JAVA程序 例如,要调用什么函数,对应返回结果和参数是什么
用C#调用python程序(含第三方库)
本人使python小白,但是最近要做一个界面,开始我用C#,但是调用含第三方库(TensorFlow)的python程序时会报错,而且必须安装有python的编译环境,在网上查了一些资料可以先用C++调用Python,再打包成dll文件给C#调用,可是这样一来就很麻烦。所以我在想直接用Python+QT做界面会不会好一点。有没有大佬给点建议。
qt隐式调用mysql库函数
系统是64位,安装的qt也是64位的,vs2013也是64位的,mysql在c盘,采用隐式调用,用qt编译项目的时候,已经在Pro中添加了LIBS += -LC:\mysql\lib -llibmysql,在头文件中也写了#include <C:/mysql/include/mysql.h>,可是项目中有mysql_init的时候,编译时候报错无法解析的外部符号mysql_init,请教是什么问题啊????
请问DLL文件应该怎么正确调用静态库
我用lua文件生成了一个lua的静态库 新建的WIN32控制台 把lua的路径和静态库位置设置后就能 正常编译并且调用lua函数成功 但是我新建 MFC_DLL项目 也按照相同的方法设置好了静态库各种包含路径 写相同的lua最简单的调用函数 检测能通过没错误 但是编译生成dll文件的时候就各种错误 无法解析的外部符号 什么什么该符号在函数哪里被引用 请问我出错在什么地方 是DLL文件的属性配置错了 还是我的一开始生成的lib静态库就有问题?????
c#在没有调用类的方法的情况下 能否为引用变量赋值
实例化m和x之后,Matrix类中应该怎么写才能返回m和x的值,并且m和x没用调用Matrix类中的方法。![图片说明](https://img-ask.csdn.net/upload/202001/16/1579145856_461556.png)![图片说明](https://img-ask.csdn.net/upload/202001/16/1579145863_91654.png)
同一个dotnet C#项目,只拷贝了一份换了路径和根目录名称,调用C++动态库的问题
调用同一个C++动态库,显示调用,关于调用约定 一个项目 ,使用默认CallingConvention = CallingConvention.CallingConvention = CallingConvention.StdCall)) [DllImport("DLL_LIB.dll")] 能调用成功 另外一个项目 必须改成 [DllImport("DLL_LIB.dll",CallingConvention = CallingConvention.Cdecl)] 才能调用成功。非则调用函数时报错,(原因可能是托管的 PInvoke 签名与非托管的目标签名不匹配。请检查 PInvoke 签名的调用约定和参数与非托管的目标签名是否匹配。) ps: 这种情况只出现在用vs 运行调试时,编译过后执行exe,都能执行成功。 同样的程序代码,找不到哪里不一样,怎会出现这种纠结不清的方式。求解
C# 调用支付宝api的问题
C# 调用支付宝api。我想做个扫描支付,签约这些都弄好了,然后我下载它的demo还不是很会用,里面有个tousersid都不知道是什么来的,弄好密匙之后提交他就返回说请求用户id无效
调用外部API不成功,显示的什么执行时间长,是怎么回事
调用外部API不成功,每次执行都是显示的什么执行时间长,是怎么回事,不知道是哪里的错,求解
C++调用MATLAB .m文件编译生成的dll,提示未定义函数或变量'sym'
1.MATLAB做了一个数值计算的小程序,输入2个数和2个二维数组,输出4个计算值。 2.MATLAB 中利用下列语句命令进行编译,且编译成功 mcc -W cpplib:dxzdv3 -T link:lib dxzdv3 在C++中也可以编译成功,只是运行的时候提示: 未定义函数或变量'sym' ![图片说明](https://img-ask.csdn.net/upload/201907/22/1563787205_568806.jpg) 3.找到MATLAB 源程序中对应的程序如下: tmp(i,1)=double(sym(mod(IDD3^137,899))); 发现原因是在MATLAB 计算中使用了符号变量计算。C++调用时出现问题。 其中IDD3是一个数值,本句是计算一个大数指数运算后取模(RSA加密算法) 使用符号变量的原因,MATLAB常规计算因为数值太大,数据直接溢出为NaN,使用符号变量sym可以实现大数值计算。 将该sym语句去掉后就正常运行。 请问如何解决C++调用MATLAB编译的DLL无法识别sym的问题? 也尝试过MATLAB不适用符号变量sym来进行计算,但因为数据太大,没有找到合适的方法。
C#调用C语言写的dll,dll里面用printf打印的log怎么在C#中显示?
我用C语言写的dll,别人用C#调用,现在出现问题,想把dll中的log打印出来进行排查。
VUE项目,子组件无法调用父组件的方法,this.$parent、this.$emit 都不行
原本是想要用这个子组件去调用父组件的方法,但是用VUE的三种调用方法都无法实现,想问一下还有没有什么方法能让我 在子组件的点击事件里,成功调用父组件的方法的。 ![父组件](https://img-ask.csdn.net/upload/202001/14/1578969855_255466.png) ![子组件](https://img-ask.csdn.net/upload/202001/14/1578969871_100985.png)![子组件的JS代码](https://img-ask.csdn.net/upload/202001/14/1578969877_431503.png)
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它是一个过程,是一个不断累积、不断沉淀、不断总结、善于传达自己的个人见解以及乐于分享的过程。
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过...
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
linux系列之常用运维命令整理笔录
本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新 free -m 其中:m表示兆,也可以用g,注意都要小写 Men:表示物理内存统计 total:表示物理内存总数(total=used+free) use...
比特币原理详解
一、什么是比特币 比特币是一种电子货币,是一种基于密码学的货币,在2008年11月1日由中本聪发表比特币白皮书,文中提出了一种去中心化的电子记账系统,我们平时的电子现金是银行来记账,因为银行的背后是国家信用。去中心化电子记账系统是参与者共同记账。比特币可以防止主权危机、信用风险。其好处不多做赘述,这一层面介绍的文章很多,本文主要从更深层的技术原理角度进行介绍。 二、问题引入 假设现有4个人...
程序员接私活怎样防止做完了不给钱?
首先跟大家说明一点,我们做 IT 类的外包开发,是非标品开发,所以很有可能在开发过程中会有这样那样的需求修改,而这种需求修改很容易造成扯皮,进而影响到费用支付,甚至出现做完了项目收不到钱的情况。 那么,怎么保证自己的薪酬安全呢? 我们在开工前,一定要做好一些证据方面的准备(也就是“讨薪”的理论依据),这其中最重要的就是需求文档和验收标准。一定要让需求方提供这两个文档资料作为开发的基础。之后开发...
网页实现一个简单的音乐播放器(大佬别看。(⊙﹏⊙))
今天闲着无事,就想写点东西。然后听了下歌,就打算写个播放器。 于是乎用h5 audio的加上js简单的播放器完工了。 演示地点演示 html代码如下` music 这个年纪 七月的风 音乐 ` 然后就是css`*{ margin: 0; padding: 0; text-decoration: none; list-...
Python十大装B语法
Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。
数据库优化 - SQL优化
以实际SQL入手,带你一步一步走上SQL优化之路!
通俗易懂地给女朋友讲:线程池的内部原理
餐盘在灯光的照耀下格外晶莹洁白,女朋友拿起红酒杯轻轻地抿了一小口,对我说:“经常听你说线程池,到底线程池到底是个什么原理?”
经典算法(5)杨辉三角
杨辉三角 是经典算法,这篇博客对它的算法思想进行了讲解,并有完整的代码实现。
使用 Docker 部署 Spring Boot 项目
Docker 技术发展为微服务落地提供了更加便利的环境,使用 Docker 部署 Spring Boot 其实非常简单,这篇文章我们就来简单学习下。首先构建一个简单的 S...
英特尔不为人知的 B 面
从 PC 时代至今,众人只知在 CPU、GPU、XPU、制程、工艺等战场中,英特尔在与同行硬件芯片制造商们的竞争中杀出重围,且在不断的成长进化中,成为全球知名的半导体公司。殊不知,在「刚硬」的背后,英特尔「柔性」的软件早已经做到了全方位的支持与支撑,并持续发挥独特的生态价值,推动产业合作共赢。 而对于这一不知人知的 B 面,很多人将其称之为英特尔隐形的翅膀,虽低调,但是影响力却不容小觑。 那么,在...
面试官:你连RESTful都不知道我怎么敢要你?
干货,2019 RESTful最贱实践
刷了几千道算法题,这些我私藏的刷题网站都在这里了!
遥想当年,机缘巧合入了 ACM 的坑,周边巨擘林立,从此过上了"天天被虐似死狗"的生活… 然而我是谁,我可是死狗中的战斗鸡,智力不够那刷题来凑,开始了夜以继日哼哧哼哧刷题的日子,从此"读题与提交齐飞, AC 与 WA 一色 ",我惊喜的发现被题虐既刺激又有快感,那一刻我泪流满面。这么好的事儿作为一个正直的人绝不能自己独享,经过激烈的颅内斗争,我决定把我私藏的十几个 T 的,阿不,十几个刷题网...
白话阿里巴巴Java开发手册高级篇
不久前,阿里巴巴发布了《阿里巴巴Java开发手册》,总结了阿里巴巴内部实际项目开发过程中开发人员应该遵守的研发流程规范,这些流程规范在一定程度上能够保证最终的项目交付质量,通过在时间中总结模式,并推广给广大开发人员,来避免研发人员在实践中容易犯的错误,确保最终在大规模协作的项目中达成既定目标。 无独有偶,笔者去年在公司里负责升级和制定研发流程、设计模板、设计标准、代码标准等规范,并在实际工作中进行...
SQL-小白最佳入门sql查询一
不要偷偷的查询我的个人资料,即使你再喜欢我,也不要这样,真的不好;
redis分布式锁,面试官请随便问,我都会
文章有点长并且绕,先来个图片缓冲下! 前言 现在的业务场景越来越复杂,使用的架构也就越来越复杂,分布式、高并发已经是业务要求的常态。像腾讯系的不少服务,还有CDN优化、异地多备份等处理。 说到分布式,就必然涉及到分布式锁的概念,如何保证不同机器不同线程的分布式锁同步呢? 实现要点 互斥性,同一时刻,智能有一个客户端持有锁。 防止死锁发生,如果持有锁的客户端崩溃没有主动释放锁,也要保证锁可以正常释...
项目中的if else太多了,该怎么重构?
介绍 最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的 if (msgType = "文本") { // dosomething } else if(msgType = "图片") { // doshomething } else if(msgType = "视频") { // doshomething } else { // doshom...
Nginx 原理和架构
Nginx 是一个免费的,开源的,高性能的 HTTP 服务器和反向代理,以及 IMAP / POP3 代理服务器。Nginx 以其高性能,稳定性,丰富的功能,简单的配置和低资源消耗而闻名。 Nginx 的整体架构 Nginx 里有一个 master 进程和多个 worker 进程。master 进程并不处理网络请求,主要负责调度工作进程:加载配置、启动工作进程及非停升级。worker 进程负责处...
“狗屁不通文章生成器”登顶GitHub热榜,分分钟写出万字形式主义大作
一、垃圾文字生成器介绍 最近在浏览GitHub的时候,发现了这样一个骨骼清奇的雷人项目,而且热度还特别高。 项目中文名:狗屁不通文章生成器 项目英文名:BullshitGenerator 根据作者的介绍,他是偶尔需要一些中文文字用于GUI开发时测试文本渲染,因此开发了这个废话生成器。但由于生成的废话实在是太过富于哲理,所以最近已经被小伙伴们给玩坏了。 他的文风可能是这样的: 你发现,...
程序员:我终于知道post和get的区别
是一个老生常谈的话题,然而随着不断的学习,对于以前的认识有很多误区,所以还是需要不断地总结的,学而时习之,不亦说乎
《程序人生》系列-这个程序员只用了20行代码就拿了冠军
你知道的越多,你不知道的越多 点赞再看,养成习惯GitHub上已经开源https://github.com/JavaFamily,有一线大厂面试点脑图,欢迎Star和完善 前言 这一期不算《吊打面试官》系列的,所有没前言我直接开始。 絮叨 本来应该是没有这期的,看过我上期的小伙伴应该是知道的嘛,双十一比较忙嘛,要值班又要去帮忙拍摄年会的视频素材,还得搞个程序员一天的Vlog,还要写BU...
加快推动区块链技术和产业创新发展,2019可信区块链峰会在京召开
11月8日,由中国信息通信研究院、中国通信标准化协会、中国互联网协会、可信区块链推进计划联合主办,科技行者协办的2019可信区块链峰会将在北京悠唐皇冠假日酒店开幕。   区块链技术被认为是继蒸汽机、电力、互联网之后,下一代颠覆性的核心技术。如果说蒸汽机释放了人类的生产力,电力解决了人类基本的生活需求,互联网彻底改变了信息传递的方式,区块链作为构造信任的技术有重要的价值。   1...
Java世界最常用的工具类库
Apache Commons Apache Commons有很多子项目 Google Guava 参考博客
程序员把地府后台管理系统做出来了,还有3.0版本!12月7号最新消息:已在开发中有github地址
第一幕:缘起 听说阎王爷要做个生死簿后台管理系统,我们派去了一个程序员…… 996程序员做的梦: 第一场:团队招募 为了应对地府管理危机,阎王打算找“人”开发一套地府后台管理系统,于是就在地府总经办群中发了项目需求。 话说还是中国电信的信号好,地府都是满格,哈哈!!! 经常会有外行朋友问:看某网站做的不错,功能也简单,你帮忙做一下? 而这次,面对这样的需求,这个程序员...
网易云6亿用户音乐推荐算法
网易云音乐是音乐爱好者的集聚地,云音乐推荐系统致力于通过 AI 算法的落地,实现用户千人千面的个性化推荐,为用户带来不一样的听歌体验。 本次分享重点介绍 AI 算法在音乐推荐中的应用实践,以及在算法落地过程中遇到的挑战和解决方案。 将从如下两个部分展开: AI算法在音乐推荐中的应用 音乐场景下的 AI 思考 从 2013 年 4 月正式上线至今,网易云音乐平台持续提供着:乐屏社区、UGC...
【技巧总结】位运算装逼指南
位算法的效率有多快我就不说,不信你可以去用 10 亿个数据模拟一下,今天给大家讲一讲位运算的一些经典例子。不过,最重要的不是看懂了这些例子就好,而是要在以后多去运用位运算这些技巧,当然,采用位运算,也是可以装逼的,不信,你往下看。我会从最简单的讲起,一道比一道难度递增,不过居然是讲技巧,那么也不会太难,相信你分分钟看懂。 判断奇偶数 判断一个数是基于还是偶数,相信很多人都做过,一般的做法的代码如下...
为什么要学数据结构?
一、前言 在可视化化程序设计的今天,借助于集成开发环境可以很快地生成程序,程序设计不再是计算机专业人员的专利。很多人认为,只要掌握几种开发工具就可以成为编程高手,其实,这是一种误解。要想成为一个专业的开发人员,至少需要以下三个条件: 1) 能够熟练地选择和设计各种数据结构和算法 2) 至少要能够熟练地掌握一门程序设计语言 3) 熟知所涉及的相关应用领域的知识 其中,后两个条件比较容易实现,而第一个...
Android 9.0 init 启动流程
阅读五分钟,每日十点,和您一起终身学习,这里是程序员Android本篇文章主要介绍Android开发中的部分知识点,通过阅读本篇文章,您将收获以下内容:一、启动流程概述一、 启动流程概述Android启动流程跟Linux启动类似,大致分为如下五个阶段。1.开机上电,加载固化的ROM。2.加载BootLoader,拉起Android OS。3.加载Uboot,初始外设,引导Kernel启动等。...
相关热词 c#选择结构应用基本算法 c# 收到udp包后回包 c#oracle 头文件 c# 序列化对象 自定义 c# tcp 心跳 c# ice连接服务端 c# md5 解密 c# 文字导航控件 c#注册dll文件 c#安装.net
立即提问