0
点赞
收藏
分享

微信扫一扫

作业随笔

my strlen计算字符串长度

my strcpy拷贝字符串

const的用法,保护右侧内容不被改动,与指针的妙用,(既不让女朋友花钱,也不让其换男朋友)

int num = 10;
const int* const pa = #//既不让女朋友花钱,也不让其换男朋友

assert()断言的用法,优化程序

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
//
//int main()
//{
//	int i = 0;
//	int sum = 0;//保存最终结果
//	int n = 0;
//	int ret = 1;//保存n的阶乘3,1+2*1+3*2*1=1+2+6=9
//	scanf("%d", &n);
//	for (i = 1; i <= n; i++)
//	{
//		int j = 0;
//		ret = 1;
//		for (j = 1; j <= i; j++)
//		{
//			ret *= j;
//		}
//		sum += ret;
//	}
//	printf("%d\n", sum);
//	return 0;
//}
//void my_strcpy(char* dest, char* src)
//{
//	while (*src != '\0')
//	{
//		*dest = *src;
//		src ++;
//		dest++;
//	}
//}
//void my_strcpy(char* dest, char* src)
//{
//	if (dest != NULL && src != NULL)
//	{
//		while (*dest++ = *src++)
//		{
//			;
//		}
//	}
//
//}
#include <assert.h>
//void my_strcpy(char* dest, const char* src)//const的用法,保护右侧数值不被改变
//{
//
//	assert(dest != NULL);
//	assert(src != NULL);
//	while (*dest++ = *src++)
//	{
//		;
//	}
//
//}

char* my_strcpy(char* dest, const char* src)//const的用法,保护右侧数值不被改变
{
	char* ret = dest;
	assert(dest != NULL);
	assert(src != NULL);
	while (*dest++ = *src++)
	{
		;
	}
	return ret;
}

//int main()
//{
//	char arr[] = { "####################"};
//	char arr2[] = { "bit"};
//	my_strcpy(arr, arr2);
//	printf("%s\n", arr);
//
//	return 0;
//}



int main()
{
	char arr[] = { "####################" };
	char arr2[] = { "bit" };
	printf("%s\n", my_strcpy(arr, arr2));
	return 0;
}


my strlen计算字符串长度

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <assert.h>

int my_strlen(const char* str)
{
	int count = 0;
	assert (str != NULL);
	while (*str)//*str指针为\0,则跳出循环
	{
		str++;
		count++ ;
	}
	return count;
}

int main()
{
	char arr[] = { "abcdef" };
	int ret = my_strlen(arr);
	printf("%d\n", ret);
	return 0;
}


举报

相关推荐

web随笔

Node随笔

etcd随笔

Nginx随笔

随笔(八)

python随笔

0 条评论