一. 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;
}