C 字符串精要

一. C语言常用字符串处理函数

1. 字符串常用函数

// 复制字符串
char *strcpy( char *strDestination, const char *strSource );

// 计算字符串长度,不包括最后的 '\0'
size_t strlen( const char *string );

// 字符串连接函数
char *strcat( char *strDestination, const char *strSource );

2. 数字转化为字符串

// int 换为字符串
char *_itoa( int value, char *string, int radix );

// long 转换为字符串
char *_ltoa( long value, char *string, int radix );


// unsigned long 转换为字符串
char *_ultoa( unsigned long value, char *string, int radix );

3. 字符串转化为数字

// 字符串转为 double
double atof( const char *string );

// 字符串转为 int
int atoi( const char *string );

// 字符串转为 long
long atol( const char *string );

__int64 _atoi64( const char *string );

二. 几种字符函数的实现,不使用库函数

1. 整数转换为字符

char * IntToStr(int Number, char* str)
{
	char ch, *right, *left;
	
	unsigned int iabsNumber;
	
	left = right = str;
	
        //如果没负值
	if(Number < 0)
	{
		iabsNumber = -Number; //取 number 的绝对值
		
		*str = '-'; //加上 - 号
		
		left++;
		right++;
	}
	else
		iabsNumber = (unsigned)Number;
	
        //把数字串转成字串,倒置的
	while(iabsNumber)
	{
		*right = (iabsNumber % 10) + 0x30; // 0x30, 是为了把数字变成字符,如:3 -〉'3'
		
		iabsNumber = iabsNumber / 10;
		
		right++;
	}
	
	*right-- = '\0'; //在最后加上 '\0',此时 right 的位置在 '\0'之前
	
        //把倒置的字符串,正过来
	while(right > left)
	{
		ch = *left;
		
		*left++ = *right;
		
		*right-- = ch;
	}
	
	return str;
} 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值