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

做衣服的网站最新网域查询入口

做衣服的网站,最新网域查询入口,做excel的网站,网站上的在线客服怎么做的1 .strlen C库函数size_t strlen(const char* str)计算字符串str的长度,直到空字符,不包括空字符。在C语言中,字符串实际上是使用空字符\0结尾的一维字符数组。空字符(Null character)又称结束符,缩写NUL&…

1 .strlen

C库函数size_t strlen(const char* str)计算字符串str的长度,直到空字符,不包括空字符。在C语言中,字符串实际上是使用空字符\0结尾的一维字符数组。空字符(Null character)又称结束符,缩写NUL,是一个数值为0的控制字符,\0是转义字符,意思是告诉编译器,这不是字符0,而是空字符。

#include <stdio.h>
#include <stdlib.h>
#include <string.h>int main() {char str[10];str[0] = 0;printf("strlen(str):%d\n",strlen(str));printf("%s\n",str);//此时str是一个空字符串//sizeof(str)返回的是字符数组的大小printf("sizeof(str):%d\n",sizeof(str));return 0;
}

输出

strlen(str):0sizeof(str):10

再看把str设置为长度为9的字符串的情况

#include <stdio.h>
#include <stdlib.h>
#include <string.h>int main() {char str[10]="123456789";printf("strlen(str):%d\n",strlen(str));printf("%s\n",str);//此时str是一个空字符串//sizeof(str)返回的是字符数组的大小printf("sizeof(str):%d\n",sizeof(str));if(str[9] == 0)printf("str[9] is NUL");return 0;
}

输出

strlen(str):9
123456789
sizeof(str):10
str[9] is NUL

如果不给空字符留一个位置,会报错:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>int main() {char str[10]="1234567899";printf("strlen(str):%d\n",strlen(str));printf("%s\n",str);//此时str是一个空字符串//sizeof(str)返回的是字符数组的大小printf("sizeof(str):%d\n",sizeof(str));if(str[9] == 0)printf("str[9] is NUL");return 0;
}

报错:

main.cpp:6:18: error: initializer-string for char array is too longchar str[10]="1234567899";^~~~~~~~~~~~
main.cpp:7:31: warning: format specifies type 'int' but the argument has type 'size_t' (aka 'unsigned long') [-Wformat]printf("strlen(str):%d\n",strlen(str));~~    ^~~~~~~~~~~%zu
main.cpp:10:31: warning: format specifies type 'int' but the argument has type 'unsigned long' [-Wformat]printf("sizeof(str):%d\n",sizeof(str));~~    ^~~~~~~~~~~%lu
2 warnings and 1 error generated.

2.strcat

strcat函数原型是char *strcat(char *dest,const char *src)。

传入的dest必须是以NUL结尾的合法的字符串。如果dest不是以NUL结尾的字符串,会导致未定义行为,具体效果看编译器的实现。

错误示例:

#include <stdio.h>
#include <string.h>int main() {char str1[10];for(int i = 0;i < 10;i++)str1[i] = -1;char str2[10] = "123456789";//错误示例strcat(str1,str2);printf("str1:%s\n",str1);return 0;
}

Ubuntu 20.04.6 LTS +gcc (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0,效果如下:

str1:����������123456789123456789
*** stack smashing detected ***: terminated
Aborted

http://www.dtcms.com/wzjs/370482.html

相关文章:

  • 个人与企业签订网站开发合同南京网站推广公司
  • 唐河县住房和城乡建设局网站亚马逊seo是什么意思
  • 南京网站快速排名提升本周新闻热点
  • 外贸网站 php网络营销策略的定义
  • wordpress网站框架企业邮箱怎么开通注册
  • 网站开启伪静态模板建站常规流程
  • 企业网站建设与推广范文网络服务器的功能
  • 深圳地质建设网站seo辅助工具
  • 百度一下做网站网站运营与维护
  • 衡水做网站线上渠道推广有哪些方式
  • 网站建设推广 公司app运营推广策划方案
  • 做网站效果图总结百度登陆页面
  • 郑州seo技术服务湖南seo优化按天付费
  • 万能网站网址下载网络热词
  • 二维码分销系统免费seo解释
  • 那个网站做图片比较赚钱外包seo公司
  • 宿州网站建设开发公司企业如何进行网站推广
  • 局政府网站建设管理情况汇报淘宝搜索关键词技巧
  • 管理系统网站开发报价网站建设哪家好公司
  • 十堰微网站建设价格企业邮箱账号
  • 政务服务 网站 建设方案市场营销在线课程
  • 国内知名摄影网站武汉网络推广seo
  • 独立购物商城网站制作互联网推广是什么意思
  • 门户型网站模板网站推广服务
  • 网站开发 盈利春哥seo博客
  • 横栏网站建设培训机构最新消息
  • 财税公司做网站上海网站排名优化
  • 企业营销型网站策划书西安疫情最新数据消息5分钟前
  • 品牌网站建设有哪些功能长沙seo招聘
  • 佛山做网站建设搜索引擎优化是什么?