#define _CRT_SECURE_NO_WARNINGS 1
#include<string.h>
#include<stdio.h>
#include<assert.h>
#include<stdlib.h>
////1. 计数器的方法
////2. 递归
////3. 指针 - 指针
//
////size_t == unsigned int
//int my_strlen(const char* str)
//{
// int count = 0;
// assert(str != NULL);
//
// while (*str !='\0')
// {
// count++;
// str++;
// }
// return count;
//}
//
//
//int main()
//{
// //int len = my_strlen("abcdef");
// //
// //// err
// ////char arr[] = { 'a','b','c','d','e','f' };
// ////int len = strlen(arr);//随机值
// //printf("%d\n", len);
// // 3 - 6 = -3 - 无符号数 是大于0的数字
// if (my_strlen("abc") - my_strlen("abcdef") > 0)
// {
// printf("hehe\n");
// }
// else
// {
// printf("haha\n");
// }
// return 0;
//}
//递归 - 不创建临时变量求字符串长度
//char* my_strcpy(char* dest,const char* src)
//{
// assert(dest != NULL);
// assert(src != NULL);
// char* ret = dest;
// //拷贝src指向的字符串到dest指向的空间,包含'\0'
// while (*dest++ = *src++)
// {
// ;
// }
// //返回目的空间的起始地址
// return ret;
//}
//
//int main()
//{
// char arr1[] = "abcdef";
// //char *arr1 = "abdfafefa";//err
// char arr2[] = "bit";
//
// my_strcpy(arr1,arr2);
// printf("%s\n", arr1);
// printf("%s\n", arr2);
// return 0;
//}
//char* my_strcat(char* dest,const char* src)
//{
// assert(dest && src != NULL);
// char* ret = dest;
//
// //1. 找到目的字符串的‘\0’
// while (*dest!='\0')
// {
// dest++;
// }
// //2. 追加
// while (*dest++ = *src++)
// {
// ;
// }
// return dest;
//}
//
//int main()
//{
// char arr1[30] = "hello";
// char arr2[] = "world";
// my_strcat(arr1, arr2);
// printf("%s\n", arr1);
//
// return 0;
//}
int main()
{
char arr1[30] = "hello";
char arr2[] = "world";
strcat(arr1, arr1);
printf("%s\n", arr1);
return 0;
}