cgi程序如何接收Qt客户端参数?

cgi程序如何接收Qt客户端参数?,第1张

以下的程序测试过了,可以满足你的要求了。

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

int main()

{

//输出HTTP头

printf("Content-type: text/plain\n\n")

//从CONTENT_LENGTH环境变量中取出其值

int n = atoi(getenv("CONTENT_LENGTH"))

printf("%d\n", n)

char buf[20]

memset(buf, 0, sizeof(buf))

//从stdin标准输入流中读取数据

fgets(buf, n, stdin)

//输出

printf("Hi, this is CGI with c\n")

printf("%s\n", buf)

return 0

}

大致流程你都懂,就是有些细节不清楚吧。从stdin读取数据时,首先要知道读多长的数据,而这个长度保存在“CONTENT_LENGTH‘整个环境变量中。另外从stdin读取数据要用fgets函数,scanf不是用在网络通信中读取数据用的。

cgi只是一个接口而已,你可以用Perl/C/C++/python/Java/PHP/ABC/EFG去写

PHP是一种编程语言,由于Apache有PHP的专用模组,所以可以直接调用,现在比较少人会使用CGI的方式执行PHP(不过好像使用fast-cgi的有一定巿场),大部份的PHP用途是server side script,但实际上你也可以把他写成desktop application,有qt等界面库可以调用(不过真的没多少人开发就是了)

总结:

CGI是一种server side script的执行方式

PHP是一种编程语言!

考的是运算符优先级http://baike.baidu.com/link?url=IL17TMPY1OPIEkLlnNdfhjCWxGWh5gu6MLMTSVVaN8VbTegB5aVueWR8eVmkR9NFAXYkkcnLrb4EoWn_Jgqncm5m2zTjW_GqbkV9JpcqT5GcGIuMG310Hlt7ZqUHAOex9o2GQIn_KuZRbcRRiv5Oka这里有详细的

解答你的题:

前置++的运算优先级小于<=所以先<= a<=0为1(真)++后结果为2;0<=0所以第一个表达式为真结果为1。注意此时a的值为0

第二个表达式同理b--=33<=0为假表达式结果为1,现在算!(1)=0;

最后算与运算2&&0=0(0为假2>0C语言中不为0的都是真,与运算的含义是俩都为真才为真所以结果为1)因此k=1;

k=1,a=0,b=3


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/11337869.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-15
下一篇2023-05-15

发表评论

登录后才能评论

评论列表(0条)

    保存