欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

需要用C语言实现如下功能,求参考书?

程序员文章站 2022-05-02 09:48:00
...
需要连接mysql数据库,运行外部程序、读取网站返回json或xml数据,只需命令行操作无需窗口界面,最后生成exe可执行文件(单文件,最好不要有dll文件,能同时发布linux/mac版本命令行工具更佳),目前的水平是当年谭浩强C语言多次考试90+,除此之外无接触,求教材,谢谢。

回复内容:

Simple,只要LZ能保证你的C语言语法没有问题那就是妥妥的事情,剩下来就是调用函数的事情了
—————————————————————————————————————
第一、连接MySQL
这个可能是比较简单的东西了,
1.下载这个 Mysql C的连接器,这个算是一个套件
MySQL :: Download Connector/C
2.阅读并模拟编写读取数据库代码
MySQL :: MySQL Connector/C Developer Guide
本人一直相信官方文档…至少不会有很多错误,网上的文章很多都是以讹传讹。
—————————————————————————————————————
第二、运行外部程序
2014-04-24 12:12 补充:
运行外部程序大概有这么3种:
1.System()函数
这个函数可以执行Linux下Shell的一行命令,所以压缩解压什么的,都不在话下,学好Shell本事就是意见挺困难的事情。
2.API或者库
可以调用其他程序提供的api或者是库,比如PDF网上就有很多成熟的库,比如:pdflib.com/
3.同类语言的引用
DLL的调用之类的都算是这么回事,Java可以调用class等等,不过这个一般都是写好了,这个其实和2挺像的

还有比如什么的 不同语言之间的通信像是什么栈调用,那真的好烦,暂时还是不要考虑的好。
—————————————————————————————————————
第三、读取网站返回json或xml数据
无论是JSON或者是XML都是客户端的访问之后产生的一组数据。所以就是分为3步
1.模拟HTTP发送,或者是调用Webservice。
这一步,对于LZ来说就比较复杂了,我也只能给个思路,使用socket模拟出HTTP的请求。
2.接受请求
这个就是简单的多了,如果上面已经搞定,下面只需要去根据返回的数据把需要的那部分取出来。
2.1 JSON数据
为了减少LZ自己写库的需求,JSON推荐:
JSON
和MYSQL的一样,看文档对着写就OK
2.2 XML数据
xmlsoft.org/ 这个倒是真的没有用过··LZ试试看
————————————————————————————————————
第四、GUI我真的也不会,还好你没问!


————————————————————————
2014-04-24 12:12 补充:
LS说的也不错,其实高级语言更适合你,C做起来真的很累。 我觉得用 Python 会比较快。 这种事情不用我大PHP简直对不起题主,我保证题主的需求全都符合而且PHP比Python更傻瓜门槛更低。 这是一个课程设计?用C来做的话,还是有点难度的。
用四个库拼接来完成功能即可:
libmysqlclient -- 连接数据库
libcurl -- 读取网站
cjson -- 解析json数据
libxml2 -- 解析xml数据
运行外部程序,直接fork + execve/system就可以了吧.

模块组织上要先设计好,功能步骤理清晰,组织好目录结构和makefile,嗯,开工吧。 c语言也能干大事 很适合你 题主说了要用C,你们扯别的教育人家干啥
把你要用到的技术前面加lib,google之
或者这么搜 site:*.com c 加上mysql json 以你目前的经验来看,用PHP做这个事情,2,3天的工作量。
用C/C++,Java?没2,3月你搞不定 C语言完全可以实现,但是一般都要依赖一些库。但是我觉得用C语言实现这些功能完全没有意义。就像楼上提的那样,用Python更快更强大。 我也是在 JSON 和 MySQL 之间做衔接,用的是 Python。