(1)memset(a,0,sizeof(a))的作用是把数组a清零,它也在string.h中定义。使用memset比for循环更方便、快捷。
#include <stdio.h>
#include<string.h>
int main () {
int a[5];
memset(a,0,sizeof(a));
return 0;
}
(2)如果从数组a复制到k个元素到数组b,可以这个语句:memcpy(b,a,sizeof(int)*k)。
使用memcpy函数要包含头文件string.h。如果需要把数组a全部复制到数组b中,可以写成:memcpy(b,a,sizeof(a))。
#include <stdio.h>
#include<string.h>
int main () {
int a[]={1,2,3,4,5};
int b[5];
memcpy(b,a,sizeof(a));
return 0;
}
(3)在stdlib.h中有一个函数atoi,它的函数原型如下:int atoi(char *s)
它表示将字符串s中的内容转换成一个整型数返回,如字符串“1234”,则函数返回值是1234。
#include <stdio.h>
#include<stdlib.h>
int main () {
printf("%d",atoi("1234"));
return 0;
}
(4)在stdlib.h中有一个函数itoa,它表示将整数value转换成字符串存入string.
例如,itoa(32,string,10)是将32变成十进制数一个字符串“32”,并返回指向这个字符串的指针;
#include <stdio.h>
#include<stdlib.h>
#include<string.h>
int main () {
char a[10];
printf("%s",itoa(32,a,10));
return 0;
}
(5)sprintf是个变参函数,此函数的功能是把格式化的数据写入某个字符串,它的返回值是字符串长度。包含此函数的头文件是stdio.h。
例如,本程序中的功能是将整数123打印成字符串存储在字符数组a[ ]中。
#include <stdio.h>
int main () {
char a[10];
int len=sprintf(a,"%d",123);
printf("%d",len);
return 0;
}
(6)strchr函数的功能是查找字符串s中首次出现字符c的位置。它的返回值是返回首次出现c的位置的指针,如果s中不存在c则返回NULL。包含此函数的头文件是string.h。
#include <stdio.h>
#include<string.h>
int main () {
char a[]={"hello word"};
char b='h';
char *c=strchr(a,b);
printf("%c",*c);
return 0;
}