字符串和内存操作函数声明在string.h中,常用的有:
void * memcpy( void * s1, void * s2, int n)将内存地址s2处的n字节内容拷贝到内存地址s1。
void * memset( void * s, int c, int n)将内存地址s开始的n个字节全部置为c。
--------------------------------------------------------------------------------------
char * strchr(char * s, int c),如果s中包含字符c,则返回一个指向s第一次出现的该字符的指针,否则返回NULL
char * strstr(char * s1, char * s2),如果s2是s1的一个子串,则返回一个指向s1中首次出现s2的位置的指针,否则返回NULL
char * strlwr(char * s)?将s中的字母都变成小写
char * strupr( char * s)将s中的字母都变成大写
char * strcpy( char * s1, char * s2)将字符串s2的内容拷贝到s1中去
char * strncpy( char * s1, char * s2,int n)将字符串s2的内容拷贝到s1中去,但是最多拷贝n个字节。
?????如果拷贝字节数达到n,那么就不会往s1中写入结尾的’\0’
char * strcat( char * s1, char * s2)?将字符串s2添加到s1末尾
int strcmp( char * s1, char * s2)比较两个字符串,大小写相关。如果返回值小于0,则说明s1按字典顺序在s2前面;
????返回值等于0,则说明两个字符串一样;返回值大于0,则说明s1按字典顺序在s2后面。
int stricmp( char * s1, char * s2)比较两个字符串,大小写无关。其他和strcmp同。
?
-------------------------------------------------------------------------------------------------------------------
将字符串转换为整数,或将整数转换成字符串等这类功能。它们定义在 stdlib.h中:
int atoi(char *s)将字符串s里的内容转换成一个整型数返回。比如,如果字符串s的内容是“1234”,那么函数返回值就是1234。
double atof(char *s)将字符串s中的内容转换成浮点数。a to int ////a to flor
char *itoa(int value, char *string, int radix);将整型值value以radix进制表示法写入 string。比如:
?char szValue[20];
?itoa(32,szValue,10) 则使得szValue的内容变为 “32”;
?itoa(32,szValue,16) 则使得szValue的内容变为 “20”
?
----------------------------------------------------------------------------------------------------------