前面两篇文章介绍了c语言本身基本知识
返璞归真系列-c语言快速入门/命令行调试gdb
返璞归真系列-c语言快速入门
本文章使用c开发一个简单的应用软件,也可以成为小工具,圆通快递查询,15分钟就可以把编程语言引用到我们生活当中,有兴趣的读者可以扩展成支持各个快递公司的查询;
调用的网站接口 快递100
知识点C语言的输入输出 c语言调用系统命令行工 使用的系统工具有 curl:http请求工具 jq: json 格式化工具
安装软件sudo apt install curl jq
编辑源码文件 learn_kd.c#include <stdlib.h> #include <stdio.h> #include <string.h> int main(int argc, char * argv[]){ /* 805727592944923982 */ char num[100]; //存储单号的变量 if(argc < 2){ printf("请输入快递单号,如:(805727592944923982):\n"); scanf("%s", num); }else{ strcpy(num, argv[1]); } printf("快递单号为:%s\n", num); char cmd[1000]; //存储命令的变量 sprintf(cmd, "curl 'http://www.kuaidi100.com/query?type=yuantong&postid=%s&temp=0.719680171720616&phone=' -H 'Cookie: WWWID=WWWA93DAF1677F5F0F90BAE201D84527977; Hm_lvt_22ea01af58ba2be0fec7c11b25e88e6c=1557208283; Hm_lpvt_22ea01af58ba2be0fec7c11b25e88e6c=1557208283' -H 'Accept-Encoding: gzip, deflate, sdch' -H 'Accept-Language: zh,en-US;q=0.8,en;q=0.6' -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36' -H 'Accept: application/json, text/javascript, */*; q=0.01' -H 'Referer: http://www.kuaidi100.com/' -H 'X-Requested-With: XMLHttpRequest' -H 'Connection: keep-alive' --compressed | jq .", num); printf("命令行:\n%s", cmd); system(cmd); return 0; }
编译并运行文件gcc test_kd.c -o kd && ./kd 805727592944923982
总结通过参数输入,标准输出作为输出,整合其他系统工具,站在巨人肩膀上,减少工作量。
,