当前位置: 首页 > news >正文

做网站导航用什么开元程序软件推广怎么赚钱

做网站导航用什么开元程序,软件推广怎么赚钱,网站怎么做右上角消息提醒,返利网站建设服务strstr函数 函数介绍 strstr 用于在一个字符串中查找另一个字符串的首次出现。 我们来看这个函数的参数名字:haysytack(干草堆)needle(针),这个其实就是外国的一句谚语:在干草堆中找一根针,就…

strstr函数

函数介绍

strstr 用于在一个字符串中查找另一个字符串的首次出现。 

我们来看这个函数的参数名字:haysytack(干草堆)needle(针),这个其实就是外国的一句谚语:在干草堆中找一根针,就类似于我们中国的大海捞针一样,很有趣。也在某种程度上对应了这个函数的用途。

示例:

char *s = "abcd.txt";
char *p = strstr(s, ".wps");if(p == NULL)printf("文件[%s]不是WPS文件\n", s);
elseprintf("文件[%s]是WPS文件\n", s);

strchr函数和strrchr函数 

函数介绍

  1. 这两个函数的功能,都是在指定的字符串 s 中,试图找到字符 c
  2. strchr() 从左往右找,strrchr() 从右往左找。都是查找某个字符的首次出现
  3. 字符串结束标记 ‘\0’ 被认为是字符串的一部分。

示例:

char *p;p = strchr("www.qq.com", '.'); // 从左到右找到第一个出现的字符'.'
printf("%s\n", p);             // 输出 ".qq.com"p = strrchr("www.qq.com", '.');// 从右到左找到第一个出现的字符'.'
printf("%s\n", p);             // 输出 ".com"

strstr是否可以替代strchr

  • 相似点strstrstrchr 都可以在字符串中查找特定的内容,并返回指向该内容在字符串中位置的指针。
  • 不同点strstr 查找子字符串,而 strchr 查找单个字符。

从技术上讲,你可以用 strstr 来替代 strchr 的功能,因为 strstr 可以查找单个字符组成的子字符串。

虽然 strstr 可以用来查找单个字符组成的字符串,从而实现与 strchr 类似的功能,但在实际应用中,strchr 更加简洁和直接地用于查找单个字符。因此,虽然 strstr 可以囊括 strchr 的功能,但在需要查找单个字符时,通常推荐使用 strchr,以使代码更具可读性和表达力

strlen函数 

函数介绍

示例:

char *s = "www.baidu.com.cn";
printf("百度官网地址的长度是:%d\n", strlen(s));

且我们的是返回字符长度,不是总空间的大小,和sizeof操作符不一样。 

strcmp函数和strncmp

函数介绍

它可以帮助我们比较指针指向的字符串的大小 

  • 比较字符串大小,实际上比较的是字符的 ASCII码值的大小。
  • 从左到右逐个比较两个字符串的每一个字符,当能“决出胜负”时立刻停止比较。

示例 

printf("%d\n", strcmp("abc", "abc")); // 输出0,两个字符串相等
printf("%d\n", strcmp("abc", "aBc")); // 输出1,"abc" 大于 "aBc"
printf("%d\n", strcmp("999", "aaa")); // 输出-1,"999" 小于 "aaa"printf("%d\n", strcmp("abcd", "abce")); // 输出-1,"abcd" 小于 "abce"
printf("%d\n", strcmp("abcd", "abce",3 )); // 输出0,"abcd" 和 "abce"前三个字符一样
    char a[]="abc";char b[]="bc";printf("%d\n", strcmp(a, b)); // 输出-1,a指向的字符串<b指向的字符串//    if(a==b){//这样是不行的,因为这样是比较了我们指针指向的地址的大小是否相等
//        printf("%s","same");
//    }
//    else{
//        printf("%s","not same");
//    }
//手写代码if(*a<*b){printf("%s","a<b");}if(*a>*b){printf("%s","a>b");}if(*a==*b){printf("%s","a==b");}

1.比较字符串并不要求两个字符串一样长。"za">"abcde"       "abc">"ab"

2.strlen可以帮助我们由指针来直接比较指向内容的字符串大小,不用解引用,并且比手写代码比较更加简洁

strtok函数

函数介绍

1.当strtok在参数s的字符串中发现到参数sep的分割字符时则会将该字符改为’\0’字符 

2.在第一次调用时,strtok必须赋予参数str字符串,往后的调用则将参数s设置成NULL,并且要赋予分隔符串,比如分隔符串",; "这里便包含了三个分割符,表示str中的这三种符号都将会被视作分割标识,我们的strtok函数将会将字符串中的这三种符号都换为’\0’。

3.在这里要分割字符串str,我们每次调用strtok的话首先会返回的是指向第一个分割串的指针,调用第二次的话返回的是指向第二个分割串的指针,直到最后返回NULL表示分割完成。

4.strtok会修改原字符串,所以原字符串必须可修改,所以第一个参数不能用指向字符串常量的指针来作为参数,因为字符串常量中的内容不能改变,必须使用字符数组来存储我们要分割的字符串。

示例:将分割好的字符串按行打印

1.这里采用while是非常合适的.

2.这里假如不定义字符数组而是定义了char *s = "abcd,1234,xy;888,666 999",那么将得不到正确的结果,上面也说过了,这个函数必须可以修改原来的字符串。对于字符串常量的话我们对其是不可以修改的。所以这里必须定义的是字符数组。

3.strtok 函数的行为是它会将连续的分隔符视为一个分隔符,而不会返回空的标记。

对于上面的s数组,写成s[]="abcd,,,,1234,xy;888,666  999"这样也是得到相同的结果。

strcat函数和strncat函数(更安全)

函数介绍

  1. 这两个函数的功能,都是将 src 中的字符串,复制拼接到 dest 的末尾。
  2. strcat() 没有边界控制,因此可能会由于 src 的过长而导致内存溢出。
  3. strncat() 有边界控制,最多复制 n+1 个字符(其中最后一个是 ‘\0’ )到 dest 的末尾

示例:

char s1[10] = "abc";
strcat(s1, "xyz");
printf("%s\n", s1); // 输出 "abcxyz"char s2[10] = "abc";
strcat(s3, "123456789"); // 此处操作内存溢出,可能会发生内存崩溃char s[10]  = "abc";
strncat(s, "123456789", sizeof(s)/sizeof(char)-strlen(s)-1);
printf("%s\n", s); // 输出 "abc123456",两个字符串被拼接到了一起,且不会溢出

1.有时候可能我们使用strcat来拼接了超过实际内存所能存储的字符,我们输出了之后也正常输出,没错误,可能就有侥幸心理,实际上这纯属偶然并且这就相当于埋下了一颗地雷,指不定哪天就出错了,所以更推荐使用strncat这个版本,更加安全。

2.这里拼接操作很显然会改变字符数组存储的数据,所以这里的第一个参数也必须是字符数组,不能是一个字符串常量。

strcpy函数和strncpy函数(更安全)

函数介绍

  1. 这两个函数的功能,都是将 src 中的字符串,复制到 dest 中,dest原本内容被覆盖
  2. strcpy() 没有边界控制,因此可能会由于 src 的过长而导致内存溢出。
  3. strncpy() 有边界控制,最多复制 n+1 个字符(其中最后一个是 ‘\0’ )到 dest 中。

示例:

char s1[5] = "abc";
strcpy(s1, "xyz);
printf("%s\n", s1); // 输出 "xyz",原有的"abc"被覆盖char s2[5] = "abc";
strcpy(s2, "123456789"); // 此处操作内存溢出,可能会发生内存崩溃char s[5] = "abc";
strncpy(s, "123456789", sizeof(s)/sizeof(char)-1);
printf("%s\n", s); // 输出 "1234",有边界保护,不会溢出

1.更推荐使用strncat这个版本,更加安全。

2.这里的第一个参数也必须是字符数组,原因还是这里我们需要对字符数组进行修改,字符串常量是不能被修改的。

http://www.mnyf.cn/news/46819.html

相关文章:

  • 企业网站的制作原则石家庄疫情最新情况
  • 做网站不用数据库可以吗网络广告联盟
  • 做网站推广怎么找客户晨阳seo
  • 做网站开发 甲方提供资料搜索引擎分析论文
  • 列举常用动态网站开发技术郑州seo优化
  • 怎样做农产品交易平台网站有必要买优化大师会员吗
  • 本地的佛山网站建设seo兼职工资一般多少
  • 商业类网站的设计与制作seo搜索引擎优化价格
  • 凡科建站是不是关闭企业网站今天上海重大新闻事件
  • 长春网站优化体验关键词优化方法有什么步骤
  • 国内常用erp系统有哪几种seo网站诊断价格
  • 上海网站建设|网站制作情感营销经典案例
  • 网站里面嵌入的地图是怎么做的百度百科推广费用
  • wordpress首页导航添加图片大地seo
  • 一家只做特卖的网站seo优化入门教程
  • 域名停靠万网域名网站入口南宁seo外包平台
  • 毕业设计做音乐网站郑州抖音推广
  • 花钱也可以哪些网站可以做推广广告广州seo推广服务
  • 微信公众号网站开发竞价托管资讯
  • wordpress调用副标题seo引擎优化怎么做
  • logo设计大赛网站seo积分系统
  • 那些网站可以注册域名太原百度seo
  • 有了源码怎么搭建网站seo优化上海牛巨微
  • 福田网站优化口碑营销理论
  • 深圳市宝安区做网站建设的企业投放广告
  • wordpress中国网站排名首页优化公司
  • 如何 套用模板做网站企业推广软件
  • 如何自己做网站赚钱网络广告推广平台
  • sql可以做网站吗app开发费用一览表
  • 代做硬件毕业设计网站搜索网络如何制造