strlen.c

来自「用于嵌入式Linux系统的标准C的库函数」· C语言 代码 · 共 36 行

C
36
字号
/* *  C library strlen routine * *  This routine has been optimized for the CPU32+. *  It should run on all 68k machines. * *  W. Eric Norum *  Saskatchewan Accelerator Laboratory *  University of Saskatchewan *  Saskatoon, Saskatchewan, CANADA *  eric@skatter.usask.ca */#include <string.h>/* * Test bytes using CPU32+ loop mode if possible. */size_tstrlen (const char *str){	unsigned int n = ~0;	const char *cp = str;	asm volatile ("1:\n"	     "\ttst.b (%0)+\n"#if defined(__mcpu32__)	     "\tdbeq %1,1b\n"#endif	     "\tbne.b 1b\n" :		"=a" (cp), "=d" (n) :		 "0" (cp),  "1" (n) :		 "cc");	return (cp - str) - 1;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?