Apache busybox httpd cgi不';“t打印”;return";

Apache busybox httpd cgi不';“t打印”;return";,apache,cgi,executable,busybox,cgi-bin,Apache,Cgi,Executable,Busybox,Cgi Bin,请帮忙,我找不到解决办法 情况。我有busybox httpd服务器。在CGIBIN文件夹中是一个cgi可执行文件,它通过printf命令将格式化文本发送给客户端 问题是文本格式应该看起来像一列,但客户端只接收一个字符串。尽管在“printf”中我使用了“\n”和“(char)13”。 换句话说,可执行文件不返回“return”符号 我写了以下内容 for (i=0; i<4;i++) printf ("%9.8g%c\n", lTemp[i]*dTemp[i], (char) 13

请帮忙,我找不到解决办法

情况。我有busybox httpd服务器。在CGIBIN文件夹中是一个cgi可执行文件,它通过printf命令将格式化文本发送给客户端

问题是文本格式应该看起来像一列,但客户端只接收一个字符串。尽管在“printf”中我使用了“\n”和“(char)13”。 换句话说,可执行文件不返回“return”符号

我写了以下内容

for (i=0; i<4;i++)
 printf ("%9.8g%c\n",  lTemp[i]*dTemp[i], (char) 13 );

for(i=0;i从CGI程序发送到web客户端的文本被视为HTML文本,而不是纯文本。
当处理HTML以在浏览器中显示时,换行符和回车符(您简单地称之为“回车”)将被忽略

要使显示的文本执行换行,应在输出字符串中插入“
”:

printf("%9.8g <br />\r\n", lTemp[i] * dTemp[i]);
printf(“%9.8g
\r\n”,lTemp[i]*dTemp[i]);
在CGI程序生成的文本中使用换行符和空格对显示的实际HTML页面几乎没有影响。使用换行符和空格格式化HTML以使源代码可读,并使用HTML标记控制客户端浏览器中显示的文本

顺便说一句
printf中使用数字常量和字符转换不是输出回车字符的首选方法。
使用格式中定义的转义序列
\r