首页 > C/C++语言 > C/C++基本语法 > 一些字符串函数的实现(非官方)
2005
11-13

一些字符串函数的实现(非官方)

//这是我在学习指针和字符串的时候写的一些函数!在VC6.0的环境下执行通过.


//strfun.h


#ifndef _STRFUN_H_
#define _STRFUN_H_
/* 定义NULL指针 */


/* 包含_ASSERT宏定义 */
#include <crtdbg.h>


#ifndef NULL
#ifdef __cplusplus
#define NULL    0
#else
#define NULL    ((void *)0)
#endif
#endif


#ifndef _SIZE_T_DEFINED
typedef unsigned int size_t;
#define _SIZE_T_DEFINED
#endif


/* 得到字符串长度函数 */
size_t strlen( const char *str );
/* 连接字符串函数 */
char *strcat( char *strDest, const char *strSrc );
/* 复制字符串函数 */
char *strcpy( char *strDest, const char *strSrc );
#endif


//strfun.cpp


#include “strfun.h”


size_t strlen( const char * str )
{
 _ASSERT( str != NULL );


 size_t len = 0;


 while( *str ) {
  len++;
  str++;
 }


 return len;
}


char *strcat(char *strDest, const char *strSrc)
{
 _ASSERT( (strDest != NULL) && (strSrc != NULL) );


 char *strTmp = strDest;


 while( *strTmp ) {
  strTmp++;
 }


 do {
  *strTmp++ = *strSrc;
 } while ( *strSrc++ );


 return strDest;
}


char *strcpy( char *strDest, const char *strSrc )
{
 _ASSERT( (strDest != NULL) && (strSrc != NULL) );


 char *strTmp = strDest;


 while ( (*strTmp++ = *strSrc++) != ‘\0′ ) {
  NULL;
 }


 return strDest;
}


 



 

xstar38669.7630555556


一些字符串函数的实现(非官方)》有 2 条评论

  1. BC终结者 说:

    不错啊。不过系统有自带的哦。。

  2. xstar 说:

    是有!呵呵!不过可以自己实现看看!有时候你会觉得系统自带的东西也就那回事!

留下一个回复