赞
踩
目录
- #define _CRT_SECURE_NO_WARNINGS 1
- #include<stdio.h>
- #include<string.h>
- #include<assert.h>
-
- //strlen模拟实现
- size_t Strlen(const char* str)
- {
- assert(str);
- int count = 0;
- while (*str != '\0')
- {
- count++;
- str++;
- }
- return count;
- }
-
-
- int main()
- {
- char a[] = "abcdefg";
- int len = Strlen(a);
- printf("%d", len);
- return 0;
- }

- #define _CRT_SECURE_NO_WARNINGS 1
- #include<stdio.h>
- #include<string.h>
- #include<assert.h>
-
-
- size_t Strlen(const char* str)
- {
- assert(str);
- int count = 0;
- if (*str != 0)
- {
- count = 1 + Strlen(str + 1);
- }
- else
- return 0;
- }
-
-
- int main()
- {
- char a[] = "abcdefg";
- int len = Strlen(a);
- printf("%d", len);
- return 0;
- }

- int main()
- {
- char arr1[] = "abcdefg";
- char arr2[] = "hij";
- strcpy(arr1, arr2);
- printf("%s", arr1);
- return 0;
- }
- #define _CRT_SECURE_NO_WARNINGS 1
- #include<stdio.h>
- #include<string.h>
- #include<assert.h>
- char* Strcpy(char* dest, const char* src)
- {
- char* ret = dest;
- assert(dest && src);
- while (*dest++ = *src++)
- {
- ;
- }
- return ret;
- }
-
- int main()
- {
- char arr1[] = "abcdefg";
- char arr2[] = "hijk";
- char* p = Strcpy(arr1, arr2);
- printf("%s", p);
- return 0;
- }

- #define _CRT_SECURE_NO_WARNINGS 1
- #include<stdio.h>
- #include<string.h>
- #include<assert.h>
- char* Strcat(char* dest, const char* src)
- {
- char* ret = dest;
- assert(dest && src);
- //找目标空间中的'\0'
- while (*dest != '\0')
- {
- dest++;
- }
- //拷贝
- while (*dest++ = *src++)
- {
- ;
- }
- return ret;
- }
- int main()
- {
- char arr1[20] = "abcd ";
- char arr2[] = "ef";
- Strcat(arr1, arr2);
- printf("%s", arr1);
- return 0;
- }

- #define _CRT_SECURE_NO_WARNINGS 1
- #include<stdio.h>
- #include<string.h>
- #include<assert.h>
- int Strcmp(const char* s1, const char* s2)
- {
- assert(s1 && s2);
- while (*s1 == *s2)
- {
- if (*s1 == '\0') //字符串全部比较完毕
- return 0;
- s1++;
- s2++;
- }
- return *s1 - *s2;
- }
- int main()
- {
- char arr1[] = "abcd ";
- char arr2[] = "abf";
- int x = Strcmp(arr1, arr2);
- printf("%d", x);
- return 0;
- }

char *strncpy( char *strDest, const char *strSource, size_t count );
char *strncat( char *strDest, const char *strSource, size_t count );
int strncmp( const char *string1, const char *string2, size_t count );
- #define _CRT_SECURE_NO_WARNINGS 1
- #include<stdio.h>
- #include<string.h>
- #include<assert.h>
- int main()
- {
- char arr1[] = "abcdefg";
- char arr2[] = "abc";
- int ret1 = strncmp(arr1, arr2, 2);
- int ret2 = strncmp(arr1, arr2, 4);
-
- printf("%d\n", ret1);//0
- printf("%d\n", ret2);//1
- return 0;
- }
- #define _CRT_SECURE_NO_WARNINGS 1
- #include<stdio.h>
- #include<string.h>
- #include<assert.h>
- int main()
- {
- char arr1[] = "abc";
- char arr2[] = "abc";
- int ret1 = strncmp(arr1, arr2, 7);
-
- printf("%d\n", ret1);//0
- return 0;
- }
’
- #define _CRT_SECURE_NO_WARNINGS 1
- #include<stdio.h>
- #include<string.h>
- #include<assert.h>
- char* Strstr(const char* str1, const char* str2)
- {
- char* s1 = NULL;
- char* s2 = NULL;
- char* cp =str1;//记录当前检查子串的起始位置
- while (*cp)
- {
- s1 = cp;
- s2 = str2;
- while (*s1&&*s2&&*s1 == *s2)
- {
- s1++;
- s2++;
- }
- if (*s2 == '\0')
- {
- return cp;
- }
- cp++;
- }
- return NULL;
- }
- int main()
- {
- char arr1[] = "abcdefghijefg";
- char arr2[] = "efg";
- char*p=Strstr(arr1, arr2);
- if (p == NULL)
- {
- printf("查找失败!\n");
- }
- else
- {
- printf("%s", p);
- }
- return 0;
- }

char * strtok ( char * str, const char * sep );
- #define _CRT_SECURE_NO_WARNINGS 1
- #include<stdio.h>
- #include<string.h>
- int main()
- {
- char arr[] = "2907593778@qq.com";
- char buf[30] = { 0 };
- strcpy(buf, arr);//将数据拷贝一份,处理arr数组的内容
- const char* p = "@.";
- char* str = NULL;
- str = strtok(buf, p);
- printf("%s\n", str);
-
- str = strtok(NULL, p);
- printf("%s\n", str);
-
- str = strtok(NULL, p);
- printf("%s\n", str);
- return 0;
- }

- #define _CRT_SECURE_NO_WARNINGS 1
- #include<stdio.h>
- #include<string.h>
- int main()
- {
- char arr[] = "29075.93778@qq.com";
- char buf[30] = { 0 };
- strcpy(buf, arr);//将数据拷贝一份,处理arr数组的内容
- const char* p = ".@.";
- char* str = NULL;
- for (str = strtok(buf, p); str != NULL; str = strtok(NULL, p))
- {
- printf("%s\n", str);
- }
- return 0;
- }

char *strerror( int errnum );
- #define _CRT_SECURE_NO_WARNINGS 1
- #include<stdio.h>
- #include<string.h>
- #include<errno.h>
- int main()
- {
- FILE* pf = fopen("data.txt", "r");
- if (pf == NULL)
- {
- printf("%s", strerror(errno));
- }
-
- fclose(pf);
- pf = NULL;
- return 0;
- }

Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。