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

淘宝客做的好的几个网站网站设计中怎么显示链接内容

淘宝客做的好的几个网站,网站设计中怎么显示链接内容,什么是体验营销,wordpress模板如何前言#xff1a; 其实在c语言当中是没有字符串这一概念的#xff0c;不像c里面有string类型用来存放字符串。在c语言中我们只能把字符串放在字符串常量以及字符数组中。 1.常见字符串函数 1.1strlen size_t strlen ( const char * str );作用#xff1a;用来求字符串中 …前言 其实在c语言当中是没有字符串这一概念的不像c里面有string类型用来存放字符串。在c语言中我们只能把字符串放在字符串常量以及字符数组中。 1.常见字符串函数 1.1strlen size_t strlen ( const char * str );作用用来求字符串中 \0 前面出现的字符个数不包 含 \0 )。 这里我们要注意的是在定义字符数组的时候我们需要给‘\0’留出空间因为编译器会在字符串后面加一个‘\0’。 #includestdio.h #includestring.h int main() {char arr[5] asdfg;printf(%zd\n, strlen(arr));return 0; } 我们可以看到如果我们没有手动在字符串后面加一个‘\0并且还没有预留出一个位置用来编译器自动放‘\0的时候strlen在计算字符串大小的时候就会出错。 所以在使用strlen的时候我们要注意字符串末尾是否有‘\0要么是自己手动添加要么是留出位置空间给编译器自动添加。 当然这种不初始化空间大小方式也可以编译器会自动给留出空间放’\0 char arr[] asdfg; printf(%zd\n, strlen(arr)); 还需要注意的是strlen函数的返回值类型是size_t而不是int. size_t和int有什么区别呢 size_t是无符号整数也就意味着没有负数这一概念. 1.2.strcpy char* strcpy(char * destination, const char * source ); 这个是字符串复制函数将source指向地址的字符覆盖destination指针指向的地址的元素以source字符串的‘\0结束。 要注意的是 1.目标字符串的空间一定要足够。 2.源字符串一定以’\0结尾。 3.会将源字符串中的 \0 拷贝到目标空间 1.3.strcat char * strcat ( char * destination, const char * source );字符串追加函数用来在目标字符串后面接上源字符串 通俗的来说就是达到“abcdefabcdef这一目的。 注意 1.源字符串必须以 \0 结束。 2.目标空间必须有足够的大能容纳下源字符串的内容。 3.目标空间必须可修改。 4.字符串不可以自己给自己追加。 为什么不可以自己给自己追加呢 首先我们要知道strcat函数追加的原理是在目标字符串的‘\0处开始追加直到源字符串的’\0被追加过去后马上停止。也就意味着如果是自己追加自己在开始追加的时候就把目标字符串的‘\0’给覆盖了由于目标字符串和源字符串是一个东西所以发现源字符串的’\0‘找不到了。所以就会出错。 1.4.strcmp int strcmp ( const char * str1, const char * str2 ) 字符串比较函数标准规定 第一个字符串大于第二个字符串则返回大于0的数字 第一个字符串等于第二个字符串则返回0 第一个字符串小于第二个字符串则返回小于0的数字。 那如何比较呢 其实就是从第一个字符串开始比较字典序大小遇到不一样的就停止。 const char* str1 abcdef; const char* str2 abc;const char* str3 abcdef; const char* str4 abd;const char* str5 abc; const char* str6 abc; printf(%d\n, strcmp(str1, str2)); printf(%d\n, strcmp(str3, str4)); 以上都是我们比较常用的一些字符串函数下面来介绍一些升级版的字符串函数。 1.5.strncmp char * strncpy ( char * destination, const char * source, size_t num ); 我们发现它跟strcmp函数很像而且同样也是实现字符串的比较功能但是strncmp可以控制比较的长度第三个参数表示只比较前num个字符的大小。 const char* str1 abcdef; const char* str2 abc; printf(%d\n, strncmp(str1, str2,3)); 1.6.strncat char * strncat ( char * destination, const char * source, size_t num );跟strcat函数很像而且同样也是实现字符串的追加功能但是前者可以控制追加的长度第三个参数表示只追加源字符串前num个字符。 char arr1[20] xxxxxxxxx; char arr2[5] asdff; printf(%s\n, strncat(arr1, arr2,2)); 1.7.strncpy 拷贝num个字符从源字符串到目标空间。如果源字符串的长度小于num则拷贝完源字符串之后在目标的后边追加0直到num个。 1.8.strstr char * strstr ( const char *str1, const char * str2); 查找字符串str1里面有没有出现str2所指字符串如果有返回首次出现的位置。 #include stdio.h #include string.h int main () {char str[] This is a simple string;char * pch;pch strstr (str,simple);strncpy (pch,sample,6);puts (str);return 0; } 1.9.strtok char * strtok ( char * str, const char * sep );这个函数大家见的可能比较少这是分割函数。 就是将一个字符串按照一个分割符集合去分割成各个部分。 1.sep参数是个字符串定义了用作分隔符的字符集合 。 2.第一个参数指定一个字符串它包含了0个或者多个由sep字符串中一个或者多个分隔符分割的标 记。 3.strtok函数找到str中的下一个标记并将其用 \0 结尾返回一个指向这个标记的指针。注 strtok函数会改变被操作的字符串所以在使用strtok函数切分的字符串一般都是临时拷贝的内容 并且可修改。 4.strtok函数的第一个参数不为 NULL 函数将找到str中第一个标记strtok函数将保存它在字符串 中的位置。 5.strtok函数的第一个参数为 NULL 函数将在同一个字符串中被保存的位置开始查找下一个标 记。 6.如果字符串中不存在更多的标记则返回 NULL 指针。 使用strtok将字符串分割 char str[] - This, a sample string.;char * pch;printf (Splitting string \%s\ into tokens:\n,str);pch strtok (str, ,.-);while (pch ! NULL){printf (%s\n,pch);pch strtok (NULL, ,.-);}char *p zhangpengweibitedu.tech;const char* sep .;char arr[30];char *str NULL;strcpy(arr, p);//将数据拷贝一份处理arr数组的内容for(strstrtok(arr, sep); str ! NULL; strstrtok(NULL, sep)){printf(%s\n, str);}strtok 函数会返回分割后的子字符串的指针如果没有可分割的字符串返回 NULL。请注意在每次调用 strtok 函数时第一个参数传入 NULL以便获取剩余的分割字符串。 2.常见内存函数 什么叫内存函数 内存函数是指在 C 语言中用来操作内存的一组函数。这些函数允许开发者对内存进行分配、拷贝、比较和设置等操作以满足程序的需求。 常见的内存函数包括 malloc用于动态分配指定大小的内存空间。calloc用于动态分配指定数量和大小的内存空间并将分配的内存初始化为零。realloc用于重新调整之前动态分配的内存空间的大小。free用于释放之前动态分配的内存空间。memcpy用于将源内存区域的内容复制到目标内存区域。memcmp用于比较两个内存区域的内容是否相同。memset用于将指定内存区域的内容设置为指定的值。memmove:用于在内存中移动一块数据的内容。 这里我只讲后面几个。 2.1.memcpy void * memcpy ( void * destination, const void * source, size_t num );函数memcpy从source的位置开始向后复制num个字节的数据到destination的内存位置。 这个函数在遇到 \0 的时候并不会停下来。 如果source和destination有任何的重叠复制的结果都是未定义的。 不同于strcpy,memcpy可以复制任何类型的数据。 #include stdio.h #include string.h struct {char name[40];int age; } person, person_copy; int main () {char myname[] Pierre de Fermat;/* using memcpy to copy string: */memcpy ( person.name, myname, strlen(myname)1 );person.age 46;/* using memcpy to copy structure: */memcpy ( person_copy, person, sizeof(person) );printf (person_copy: %s, %d \n, person_copy.name, person_copy.age );return 0; }2.2.memmove memmove 是一个 C 语言库函数用于在内存中移动一块数据的内容。它的函数原型如下 void *memmove(void *dest, const void *src, size_t n); 1.dest 是目标内存区域的指针数据将被复制到此处。 2.src 是源内存区域的指针要复制的数据来自此处。 3.n 是要复制的字节数。 memmove 函数将源内存区域中的数据复制到目标内存区域。与 memcpy 不同的是memmove 函数可处理源和目标内存区域重叠的情况确保数据被正确复制。 #include stdio.h #include string.hint main() {char str[10] Hello;// 使用 memmove 将字符 o 移动到字符串开头memmove(str, str4, 2);printf(%s\n, str); // 输出结果 oHellreturn 0; } 2.3.memcmp 内存比较函数比较从ptr1和ptr2指针开始的num个字节在num个字节之前遇到不相等的就停下返回值和strcmp一致。 int memcmp ( const void * ptr1,const void * ptr2,size_t num );char buffer1[] DWgaOtP12df0;char buffer2[] DWGAOTP12DF0;int n;nmemcmp ( buffer1, buffer2, sizeof(buffer1) );if (n0) printf (%s is greater than %s.\n,buffer1,buffer2);else if (n0) printf (%s is less than %s.\n,buffer1,buffer2);else printf (%s is the same as %s.\n,buffer1,buffer2);
http://wiki.neutronadmin.com/news/281828/

相关文章:

  • 自己做的网站为什么访问不哪里有免费的域名注册建网站
  • 烟台网站网站建设商品关键词怎么优化
  • 公司支付网站服务费怎么做分录html5网页设计培训
  • 网站建设培训公司近年网络营销成功案例
  • 南京网站推广价格花网站开发背景
  • 做网站国家大学科技园郑州兰州网站设计公司
  • 网站建设百度索引wordpress段子
  • 深圳网站建设服务平台天津网站推广优化
  • 网站做相片wordpress中文是什意思
  • 如何做网站关键词霸屏网站建设内容策略有哪些
  • 大气企业响应式网站公司外贸网站建设
  • 老牌网站建设网站域名所有权证书
  • 怎样在网上做网站做外贸网站
  • 百度云空间能做网站吗可以用自己的电脑做网站吗
  • 河北建设集团有限公司 信息化网站青羊区定制网站建设报价
  • 扁平化网站布局辽宁省工程建设信息网官网
  • 域名空间网站建设北京展厅设计公司科技展厅装修
  • 横琴网站建设公司扬中网站推广
  • 自己做网站能赚钱吗2018网站开发使用框架原因
  • 做网站所需要的代码网站上文章分享的代码怎么做
  • 网站建设saas排名免费聊天软件
  • 网站建设pdf微盘广州网站seo公司
  • 摄影旅游网站源码商贸企业网站建设设计方案
  • 网站怎么上传到空间海南网站搭建价格
  • 做网站开发要多久宿迁建设局网站拆除备案
  • 七星彩网站开发专业团队打造专业品质
  • 企石东莞网站建设自己怎么做响应式网站
  • 河源建设网站网站备案信息页面
  • 莱州双语网站专业的深圳网站设计
  • 企业网站 案例定远建设小学投诉网站