C语言实现库函数strlen

size_t是 unsigned int

fgets会读入\n,用strcspn 函数除去

assert判读指针是否为空指针,使用前要引头文件<assert.h>

c 复制代码
#include <stdio.h>
#include <assert.h>
size_t mystrlen(const char* str)
{
	assert(str);
	size_t count = 0;
	while (*str != '\0')
	{
		count++;
		str++;
	}
	printf("%d", count);
	return count;
}
int main()
{   
	char arr[1001];
	fgets(arr,1001, stdin);
	arr[strcspn(arr,"\n")] = 0;
	mystrlen(arr);
	return 0;
}
相关推荐
majingming1231 小时前
FUNCTION
java·前端·javascript
A_nanda2 小时前
Vue项目升级
前端·vue3·vue2
SuperEugene2 小时前
Axios 接口请求规范实战:请求参数 / 响应处理 / 异常兜底,避坑中后台 API 调用混乱|API 与异步请求规范篇
开发语言·前端·javascript·vue.js·前端框架·axios
Fly Wine2 小时前
Leetcode之有效字母异位词
算法·leetcode·职场和发展
WalterJau2 小时前
C 内存分区
c语言
abigale033 小时前
【浏览器 API / 网络请求 / 文件处理】前端文件上传全流程:从基础上传到断点续传
前端·typescript·文件上传·vue cli
Setsuna_F_Seiei3 小时前
AI 对话应用之页面滚动交互的实现
前端·javascript·ai编程
新缸中之脑3 小时前
追踪来自Agent的Web 流量
前端
程序员夏末3 小时前
【LeetCode | 第七篇】算法笔记
笔记·算法·leetcode
wefly20174 小时前
从使用到原理,深度解析m3u8live.cn—— 基于 HLS.js 的 M3U8 在线播放器实现
java·开发语言·前端·javascript·ecmascript·php·m3u8