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

如何建设一个自己 的网站首页网站建设经典文章

如何建设一个自己 的网站首页,网站建设经典文章,中国制造网下载,公司宣传片如何制作目录 一.常用字符串函数介绍 1.strlen 2. strcpy 3.strcmp 4.strcat 5.strstr 二.模拟实现常用字符串函数 1.strlen 2.strcpy 3.strcmp 4.strcat 5.strstr 一.常用字符串函数介绍 1.strlen 字符串strlen是用来求字符串长度的#xff0c;我们可以打开cpp网站查看有关… 目录 一.常用字符串函数介绍 1.strlen 2. strcpy 3.strcmp 4.strcat 5.strstr 二.模拟实现常用字符串函数 1.strlen 2.strcpy 3.strcmp 4.strcat 5.strstr 一.常用字符串函数介绍 1.strlen 字符串strlen是用来求字符串长度的我们可以打开cpp网站查看有关信息 该函数用来求字符串长度求的是‘\0’之前字符的个数函数参数为字符指针因为该函数不需要修改字符串的值故为了保护字符串被意外修改设置为只读所以在参数字符指针用const修饰返回值即为字符串的长度 下面以经典helloworld字符串为例 输出结果 字符串arr1为“helloworld”,一个10个字符该字符串长度则为10输出结果正确 2. strcpy 字符串函数strcpy是用来拷贝字符串的即将一个字符串的内容拷贝到另一个字符串中而且会将该字符的\0也拷贝到另一个字符串中我们打开cpp网站查看该函数的有关信息 该函数的参数为两个字符指针一个指向目标字符串一个指向源字符串由于只需要修改目标字符串故用const修饰源字符串以防止误修改函数返回值是目标字符串的首地址 下面以经典helloworld字符串为例 输出结果 可以看到我们将arr2中的helloworld成功地拷贝到了arr1中但特别值得注意的是当目标字符串空间不够时强行拷贝比空间更大的字符串虽然也可以输出结果但毕竟是越界访问会引发一些不可估计的问题如将本例的arr1大小由10改为5 可以看到程序运行后虽然正常地打印出了结果但是程序出错了 3.strcmp 字符串函数strcmp函数是用来比较两个字符串大小的但是并不是比较两个字符串的大小而是比较字符串的内容如果第一个字符串小于第二个字符串则返回一个小于0的值大于则返回一个大于0的值等于则返回0如“hello”和“hellz”前面的字符都相等‘o’小于‘z’故hello小于“hellz”,如“hellx”和hella前面的字符都相等x大于a所以“hellx”大于“hella” 打开cpp网站查看该函数的相关信息 该函数的参数为两个字符指针由于比较不需要修改字符串所以两个参数都用const修饰以防误修改 返回值为int型比较的结果为小于则为小于0的值大于则为大于0的值等于则为0 下面以经典的helloworld字符串为例 输出结果 arr1小于arr2故输出的结果为-1arr3大于arr4故输出的结果为1arr5等于arr6故输出的结果为0 4.strcat 字符串函数strcat是用来连接两个字符串的即将源字符串连接到目标字符串后面连接的步骤是先找到目标字符串的末尾‘\0’然后再进行拷贝所以与strcpy的区别就在于要从目标字符串的末尾开始拷贝 打开cpp网站查看该函数的相关信息 该函数的参数为两个字符指针由于源字符串不需要修改故加上const修饰以防误修改返回值为连接后的字符串的地址即目标字符串的地址 下面以经典的helloworld字符串为例 输出结果 可以看到我们成功地将arr2的“world”连接到arr1的“hello”中于是arr1便变成了“helloworld”与拷贝函数类似特别值得注意的是目标字符串要有足够大的空间否则强行连接的话会出现一些未知的错误 我们将上例的arr1的大小改为8 输出结果 可以看到虽然正常输出了但是程序报错了 5.strstr 字符串函数strstr是查找函数在字符串中查找子串并返回子串在字符串第一次出现的地址如果找不到子串则返回NULL 打开cpp网站查看该函数的相关信息 该函数的参数为两个字符指针。由于查找并不需要修改两个字符串的内容所以两个字符指针都用const修饰返回值为子串在字符串中第一次出现的地址 下面以经典的helloworld字符串为例 输出结果 可以看到“llo”可以在“helloworld”中找到并返回指向“llo”’的地址将改地址用%s打印则从llo开始打印 即为lloworld 二.模拟实现常用字符串函数 1.strlen my_strlen模拟实现库函数strlen。参数为const char *,返回值为int型即为字符串的长度利用遍历字符串的方法直到‘\0’结束遍历 #define _CRT_SECURE_NO_WARNINGS #includestdio.h #includestring.h int my_strlen(const char* str) {int len 0;//定义长度初始化为0while (*str ! \0)//从头开始遍历字符串直到\0结束{len;str;}return len;//返回字符串的长度 } int main() {char arr1[] helloworld;int ret my_strlen(arr1);printf(%d, ret);return 0; } 2.strcpy 利用my_strcpy模拟实现库函数strcpy依次赋值直到源字符串遍历到\0结束赋值并返回预留的目标字符串的地址 #define _CRT_SECURE_NO_WARNINGS #includestdio.h #includestring.h char* my_strcpy(char* str1, const char* str2) {char* p str1; //定义一个p指针保存str1,以便函数结束时返回while (*str1 *str2)//依次赋值直到*str2为\0结束{str1;str2;}return p;//返回预留的指针P } int main() {char arr1[20] {0};char arr2[] helloworld;char *str my_strcpy(arr1,arr2);printf(%s, str);return 0; } 3.strcmp 利用my_strcmp函数模拟实现库函数strcmp,依次遍历比较如果遇到不相等的情况则直接return返回如果两个字符串相等则遍历到\0再返回0 #define _CRT_SECURE_NO_WARNINGS #includestdio.h #includestring.h int my_strcmp(const char* str1, const char* str2)/*要是不相等下面的return会结束循环 要是相等则遍历到\0才结束*/ {while (*str1 ! \0 || *str2 ! \0){if (*str1 *str2) //小于则返回-1return -1;else if (*str1 *str2)//大于则返回1return 1;else if (*str1 *str2)//相等则继续比较后面的字符{str1;str2;}}return 0;//只有相等才会执行到这一步即相等返回0 } int main() {char arr1[] helloworla;char arr2[] helloworld;int ret my_strcmp(arr1,arr2);printf(%d, ret);return 0; } 4.strcat 利用my_strcat函数模拟实现库函数strcat先找到目标字符串的末尾‘\0’然后从\0处依次赋值直达遍历到源字符串的末尾\0 #define _CRT_SECURE_NO_WARNINGS #includestdio.h #includestring.h char* my_strcat(char* str1, const char* str2) {char* p str1;//保存连接字符串的地址以便函数结束时返回while (*str1 ! \0)//遍历找到str1的\0处{str1;}while (*str1 *str2)//从str1的\0处依次赋值直到遍历到str2的\0结束{str1;str2;}return p;//返回连接后字符串的地址 } int main() {char arr1[20] hello;char arr2[] world;char *str my_strcat(arr1,arr2);printf(%s, str);return 0; }5.strstr 利用my_strstr函数模拟实现库函数strstr设置两个指针分别指向两个字符串再设置一个指针P指向当前开始比较的字符的位置直到遍历到子串的\0位置则已找到子串并返回子串的位置循环节后仍咩没有找到子串则说明找不到子串返回NULL #define _CRT_SECURE_NO_WARNINGS #includestdio.h #includestring.h char* my_strstr(const char* str1, const char* str2) {const char* s1 str1;//定义s1指向第一个字符串const char* s2 str2;//定义s2指向第二个字符串const char* p str1;//定义p指向第一个字符串当前开始比较的字符while (*p){s1 p; //从p处开始比较s2 str2;//从头开始比较while (*s1 ! \0 *s2 ! \0 *s1 *s2)//判断遍历字符是否相等{s1;s2;}if (*s2 \0)//如果是因为*s2为\0结束则证明找到子串返回子串的位置return p;p;//一轮比较后没有找到子串则从下一个字符开始比较}return NULL; } int main() {char arr1[] helloworld;char arr2[] llo;char *str my_strstr(arr1,arr2);printf(%s, str);return 0; }
http://www.hkea.cn/news/14482547/

相关文章:

  • 更新网站 是否要重启iis什么是电子商务模式
  • 做网站的案例太原网站建设公司招聘
  • 深圳网站设计公司 网络服务软件工程是干什么的
  • 帮别人做网站的公司是外包吗3d建模培训班一般多少钱
  • 网站改版设计流程大学校园网络设计方案
  • 手机网站域名和pc域名的区别Wordpress排版混乱
  • 美食网站建设的意义泰兴市住房和城乡建设局网站
  • 弹幕网站开发代码网站建设徐州
  • 左旗网站建设html网站开发代码
  • 建设企业网站需要使用哪些技术小型网站建设公司价格低
  • 网站建设流程与步骤兼职做视频的网站
  • 昌邑做网站企业网站后台
  • 班玛县公司网站建设网站建设规划方案制作
  • 文登做网站的公司苏州建设银行官方网站
  • 网站推广包年清理wordpress模板
  • 华宁县住房和城乡建设局网站美客多电商平台入驻链接
  • 网站建设的辅助软件wordpress的分类目录
  • 南坪网站建设做网站开发哪里好
  • 网站策划运营方案沈阳网站 房小二
  • 做a的网站有哪些建行官方网站 - 百度
  • 全国加盟网站大全网站开发技术报告模板
  • 网站上传该怎么做公司网站功能
  • 做暧暖ox免费网站织梦txt网站地图制作
  • 淘宝网站设计模板下载廊坊seo排名外包
  • 测网站打开的速度的网址iis5.1怎么发布网站
  • 免费在线网站建设网页版崩坏星穹铁道
  • 携程旅游电子商务网站策划书网站服务器速度对seo有什么影响
  • 学校网站建设多少钱o2o网站建设机构
  • 在线名片制作网站开发中国电信网站备案流程
  • 用自己的电脑做视频网站做一个网站需要多少费用