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

潍坊网络推广网站建设wordpress比特币插件

潍坊网络推广网站建设,wordpress比特币插件,广州网站优化价格,建设个人网站赚钱1.函数介绍 1.1 strlen size_t(就是无符号整形) strlen(const char * str); 字符串已经\0作为结束标志#xff0c;strlen函数返回的是在字符串中\0前面出现的字符个数(不包 含\0) 参数指向的字符串必须要以\0结束。 注意函数的返回值为size_t#xff0c;…1.函数介绍 1.1        strlen size_t(就是无符号整形) strlen(const char * str); 字符串已经\0作为结束标志strlen函数返回的是在字符串中\0前面出现的字符个数(不包 含\0) 参数指向的字符串必须要以\0结束。         注意函数的返回值为size_t是无符号的(易错 )        不能相减 strlen函数模拟 int my_strlen(char* arr) {assert(arr);int counst 0;while (*arr ! \0){counst;arr;}return counst; } int main() {char arr[] abcdef;int len my_strlen(arr);printf(%d, len);return; } 1.2        strcpy char * strcpy (char * destination,const char * source) Copies the C string pointed by source into the array pointed by destination, including the terminating null character (and stopping at that point). 源字符串必须以\0结束。 会将源字符串中的0拷贝到目标空间。 目标空间必须足够大以确保能存放源字符串。 目标空间必须可变。 //strcpy函数模拟 void my_strcpy(char*arr2, const char* arr1) {assert(arr1);assert(arr2);while (*arr1 ! \0){*arr2 *arr1;}*arr2 *arr1;//复制\0; } int main() {char arr1[] abcdef;char arr2[20] { 0 };my_strcpy(arr2, arr1);printf(%s,arr2);return 0; } 1.3        strcat 字符串追加 char * strcat (char * destination,const char * source) Appends a copy of the source string to the destination string. The terminating null characterin destination is overwritten by the first character of source, and a null-character is includedat the end of the new string formed by the concatenation of both in destination. 源字符串必须以\0结束。 目标空间必须有足够的大能容纳下源字符串的内容。 目标空间必须可修改。 字符串自己给自己追加如何?        不能 //模拟strcat char* my_strcat(char* dest, const char* src) {char* ret dest;assert(dest src);while (*dest ! \0){dest;}while (*dest*src){;}return ret; } int main() {char arr1[20] hello ;my_strcat(arr1,world);printf(%s\n,arr1);return 0; } 1.4        strcmp 比内容不是比长度 int strcmp(const char*str1,const char*str2); //模拟strcmp int my_strcmp(const char*str1,const char*str2) {assert(*str1*str2);while (*str1*str2){if (*str1 \0)return 0;str1;str2;}if (*str1 *str2)return 1;elsereturn -1;//也可以写成return(*str1-*str2); } int main() {char arr1[20] zhangsan;char arr2[] zhangsanfeng;int ret my_strcmp(arr1,arr2);if (ret 0)printf(\n);else if (ret 0)printf(\n);elseprintf(n);return 0; } 增加长度限制 strncmp        加了一个参数n strncat strncpy 1.5        strstr 查找子串的一个函数 const char *strstr (const char *str1,const char *str2);char *strstr ( char *str1,const char *str2 ) 找到了返回子串的地址找不到返回空指针 模拟strstr char * my_strstr(char* str1, const char* str2) {assert(str1 str2);const char* s1 str1;const char* s2 str2;const char* p str1;while (*p){s1 p;s2 str2;while (*s1!\0*s2!\0 * s1 *s2){s1;s2;}if (*s2 \0){return (char*)p;}p;}return NULL; } int main() {char email[] zpwbitejiuyeke.com;char substr[] bitejiuyeke;char* ret my_strstr(email, substr);if (ret NULL){printf(字串不存在\n);}else{printf(%s,ret);}return 0; } KMP算法比较高效 1.6        strtok 用来切割字符串 char *strtok(char*str,const char *sep) sep参数是个字符串!定义了用作分隔符的字符集合 第一个参数指定一个字符串 它包含了0个或者多个由sep字符串中一个或者多个分隔符分割的标记。 strtok函数找到str中的下一个标记并将其用\0结尾返回一个指向这个标记的指针。 (注strtok函数会改变被操作的字符串所以在使用strtok函数切分的字符串一般都是临时拷贝的内容并且可修改。) strtok函数的第一个参数不为 NULL函数将找到str中第一个标记strtok函数将保存它在字符串中的位置。 strtok函数的第一个参数为NULL函数将在同一个字符串中被保存的位置开始查找下一个标记。 如果字符串中不存在更多的标记则返回 NULL指针。 1.7        strerror 返回错误码所对应的信息 char * strerror 字符分类函数 字符转换函数 1.8        memcpy 内存拷贝函数,负责两块独立空间中的数据 void*memcpy(void * destination,const void * source ,size_t num); //模拟memcpy void* my_memcpy(void *dest,const void *src,size_t num) {assert(dest src);void* ret dest;while (num--){*(char*)dest *(char*)src;dest (char*)dest 1;src (char*)src 1;}return ret; } int main() {int arr1[] {1,2,3,4,5,6,7};int arr2[10] {0};my_memcpy(arr2,arr1,28);return 0; } 1.9        memmove void*memmove(void * destination,const void * source ,size_t num); 和memcpy的差别就是memmove函数处理的源内存块和目标内存块是可以重叠的 如果源空间和目标空间出现重叠就得使用memmove函数处理。 //模拟memmove void* my_memmove(void *dest,const void *src,size_t num) {void* ret dest;if (dest src){//从前向后while (num--){*(char*)dest *(char* )src;dest (char*)dest 1;src (char*)src 1;}}else{//从后向前while (num--){*((char*)dest num) *((char*)src num);}}//有时候需要从前往后有时候从后往前处理数据 return ret; } int main() {int arr1[] {1,2,3,4,5,6,7,8,9,10};my_memmove(arr12,arr1,20);int i 0;for (i 0; i 10; i){printf(%d,arr1[i]);}return 0; } 1.10        memcmp int memcmp(const void * ptr1,const void * ptr2,size_t num); 1.11        memset void * memset(void *ptr,int value,size_t num); 以字节为单位修改不能初始化数组
http://www.hkea.cn/news/14291490/

相关文章:

  • 织梦怎么做单页网站医院门户网站模板下载
  • 大良营销网站建设平台帮人家做网站难吗
  • saas建站平台源码有哪些做普洱茶网站的
  • 长沙企业建网站网站域名可以更换吗
  • 球迷类的网站如何做汕头网站推广
  • 网站的 规划与建设wordpress 门户网站源码
  • 手机做直播官方网站o2o最好的平台
  • 企业网站管理系统 才能湖南岚鸿简单房地产网站在哪
  • 远程教育网站建设方案asp.net网站登录
  • 企业内部网站模板下载做网站推荐源创网络
  • 学习网站建设的是什么专业谷歌优化 网站建设
  • 通过一个站点的建设方案十大免费excel网站
  • 网站页面设计的网址需要网站建设
  • 网站icp备案证明文件企业营销的目的
  • 如何做免费网站网站运营维护
  • 西安大兴医院网站建设wordpress插件 乱码
  • 太原市建设银行网站信息流推广
  • 兰州新区农投建设网站南通专业做网站公司
  • 网站建设 讲话网站后台构建
  • 农产品网站的品牌建设建网站拿到广告
  • 电子商务网站开发的任务书网络营销方法有什么
  • 受欢迎的合肥网站建设天河网站建设专家
  • 如何做网站内链优化西地那非片的正确服用方法与效果
  • 云南网站设计盐步网站制作
  • 百度收录哪些网站吗vi设计说明范文解析
  • 大流量ip网站怎么做网站建设需要注意那些点
  • 工信部网站域名备案查询网站建设的规划书
  • 扬州做网站公司网站和微信同步建设
  • 职高网站建设例题wordpress get_post
  • 网站设计的需求分析arvixe如何做网站