c语言url
‘壹’ c语言URL正则表达式问题
正则表达式要写成字符串,需要先进行转义。
例如
char[] c = "\n";
\n不是表示\n,而是表示换行。
要表示\n需要写成\\n
同理
"https?://[\d\-a-zA-Z]+(\.[\d\-a-zA-Z]+)*/?"
应该写成
"https?://[\\d\\-a-zA-Z]+(\\.[\\d\\-a-zA-Z]+)*/?"
‘贰’ c语言实现取出url中的domain int ExtractDomain(char* url, char* out, int num);
这个是讲的 先加加 与 后加加的应用的 int x=3;int y=(x++)+(++x)+(x++); 计算结果如下 1.执行前增量操作执行第二个(++x) 执行后x为4; 2.执行运算符 + 也就是 y = 4 + 4 + 4 3.然后执行第一个(x++) x = 5 4.再执行第三个(x++) x = 6 先...
‘叁’ 在C语言中如何实现对编码后的URL进行解码
字符串与数字量的转换,可以按照标准的编码(如Unicode,utf8等等)进行编码解码。URL编码就有编码规则,解码时就按既定的编码规则进行就可以了。
‘肆’ c语言对url解码,该如何实现
CGI是比较古老的通用网关接口程序了,想打印数据很简单,只需要通过访问环境变量中post过来的变量名即可,如果是get则直接从URL解析出需要的变量即可。
‘伍’ 在c语言写的cgi程序中如何获取URL传递的参数
cgi程序 处于服务器端。传递的参数来自客户端,即 浏览器端 的 form。 form里定义了哪些 参数,传递时,将传递 一串 一对一对 的 参数名=参数值 数据。
c语言 只要分析这段 字符串,按标点符号分隔即可得。
另外,与服务器有关的 浏览器端环境变量等 参数名称,你要查服务器的帮助文件,例如: REMOTE_HOST,REMOTE_ADDR,REMOTE_USER,REMOTE_IDENT,CONTENT_TYPE。 也是 参数名 数据值 这种数据对。
(cgi interface 程序 用 perl 脚本 比 用 c 简单 易写。)
‘陆’ 怎么用C实现url合法性
往大出说就是一个简单的模板解释器(正则表达式),小出说就是一个数据匹配的过程,按照这个想法去应该没问题吧
‘柒’ c语言获取url
txt读入温度,湿度等数据。
用printf()输出 HTML 文件。
#define LF 10
#define CR 13
int wen,shi;
char shijian[20];
FILE *fin;
// 打开data.txt,读入 wen,shi,shijian,关文件
// 下来输出
printf("<HTML>%c",LF);
printf("<HEAD><TITLE>web界面</TITLE></HEAD>%c",LF);
printf("<meta http-equiv=\"Content-Type\"
content=\"text/html\"; charset=\"gb2312\" />);
printf("<BODY>%c",LF);
printf("<H2>温度:%d 湿度:%d 时间:%s</H2>%c",LF,wen,shi,shijian);
printf("<HR></BODY></HTML>%c",LF);
===============================================
网上留言获取,变量名字与网页定义有关。
char *cl;
char manydata[10240];
void getword(char *word, char *line, char stop) {
int x = 0,y;
for(x=0;((line[x]) && (line[x] != stop));x++)
word[x] = line[x];
word[x] = '\0';
if(line[x]) ++x;
y=0;
while(line[y++] = line[x++]);
}
void unescape_url(char *url) {
register int x,y;
for(x=0,y=0;url[y];++x,++y) {
if((url[x] = url[y]) == '%') {
url[x] = x2c(&url[y+1]);
y+=2;
}
}
url[x] = '\0';
}
void plustospace(char *str) {
register int x;
for(x=0;str[x];x++) if(str[x] == '+') str[x] = ' ';
}
返回信息长度:
char_l = atoi(getenv("CONTENT_LENGTH"));
cl = &manydata[0];
分离变量名与值(即内容):
for (i=0; i < char_l ;i++) {
*( cl + i) = (char)fgetc(stdin) ;
};
*( cl + char_l) = '\0';
查找需要的变量名与值:
for(x=0;cl[0] != '\0'; x++) {
m=x;
getword(w,cl,'=');
plustospace(w);
unescape_url(w);
if( strcmp(w,"name") == 0) {
getword(w,cl,'&');
plustospace(w);
unescape_url(w);
strcpy(name,w);
}
。。。。
}
---------------------------------
另外,团IDC网上有许多产品团购,便宜有口碑
‘捌’ 在c语言写的cgi程序中怎么获取URL传递的参数
当然,如果你想得到cgi的参数,可以把它作为结果的一部分返回到页面。如何间接调用?能给个简单的例子吗? 问题补充:能给个小例子吗,我要做的是打开一个页面,页面初始化一些参数,这些参数是从cgi程序中来的,这能实现吗?上传参数给cgi例子
‘玖’ c语言截取下载url中文件名称
思路大概如下:将整个字符串及其长度传给函数,然后在函数中用指针接收字符串,利用其长度把指针移到字符串结尾处,然后用循环不断将指针向前移动,并判断其指向的字符与/是不是一样的,如果一样退出循环,此时指针指向着字符串中最后一个/ 的前一个字符, 因此最后将指针再向前移2位到/后面的一个字符,最后反回指针, 再输出返回的指针后面的内容就是名称了
函数声明:char* GetName(char*,int);
整个程序:
#include<stdio.h>
char* GetName(char*,int);
int main(void)
{
char str[] = "https://gss0.bdstatic.com/70cFsjip0QIZ8tyhnq/img/logo-.gif";
char *name;
int n;
n = sizeof(str); //计算字符串的长度(包括'\0')
name = GetName(str,n); //把字符串及其长度传给函数
printf("%s\n",name); //name就是那个名称,可以输出
return 0;
}
char* GetName(char*ptr,int n)
{
int i = n; //这里i只是为循环即使终止了也未找到/而准备
ptr+=n; //把指针移到字符串的尾部,即'\0'处
while(i-->0)
{
if((*ptr--) == '/') //指针不断回移并判断是否为/符号
{
break; //从后向前遇到第一个/后退出循环
}
}
ptr+=2;
return ptr; //反回最后一个/后面的字符串即名称
}
函数原型:
char* GetName(char*ptr,int n)
{
int i = n;
ptr+=n;
while(i-->0)
{
if((*ptr--) == '/')
{
break;
}
}
ptr+=2;
return ptr;
}
#include<stdlib.h>
#include<stdio.h>
int main(void){
char address[50];
char command[50];
,,请输入网址
sprintf(command,"nslookup %s ",address);
system (command);
getchar();
return 0;
}
手机敲的