VC++学习总结文档格式.docx
《VC++学习总结文档格式.docx》由会员分享,可在线阅读,更多相关《VC++学习总结文档格式.docx(31页珍藏版)》请在冰豆网上搜索。
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include<
stdio.h>
string.h>
intmain(void)
{
charstring[10];
char*str1="
abcdefghi"
;
strcpy(string,str1);
printf("
%s\n"
string);
return0;
}
strncpy
原型:
char*strncpy(char*dest,char*src,size_tn);
功能:
将字符串src中最多n个字符复制到字符数组dest中(它并不像strcpy一样遇到NULL才停止复制,而是等凑够n个字符才开始复制),返回指向dest的指针。
strcat
字符串拼接函数
char*strcat(char*destin,char*source);
voidmain()
{
chardestination[25];
char*blank="
"
*c="
C++"
*Borland="
Borland"
strcpy(destination,Borland);
strcat(destination,blank);
strcat(destination,c);
destination);
strchr
在一个串中查找给定字符的第一个匹配之处\
char*strchr(char*str,charc);
charstring[15];
char*ptr,c='
r'
strcpy(string,"
Thisisastring"
);
ptr=strchr(string,c);
if(ptr)
Thecharacter%cisatposition:
%d\n"
c,ptr-string);
else
Thecharacterwasnotfound\n"
strcmp
串比较
intstrcmp(char*str1,char*str2);
看Asic码,str1>
str2,返回值>
0;
两串相等,返回0
char*buf1="
aaa"
*buf2="
bbb"
*buf3="
ccc"
intptr;
ptr=strcmp(buf2,buf1);
if(ptr>
0)
buffer2isgreaterthanbuffer1\n"
buffer2islessthanbuffer1\n"
ptr=strcmp(buf2,buf3);
buffer2isgreaterthanbuffer3\n"
buffer2islessthanbuffer3\n"
strnicmp
将一个串中的一部分与另一个串比较,不管大小写
intstrnicmp(char*str1,char*str2,unsignedmaxlen);
BBB"
ptr=strnicmp(buf2,buf1);
if(ptr<
if(ptr==0)
buffer2equalsbuffer1\n"
strlen
功能:
strlen函数求的是字符串的长度,它求得方法是从字符串的首地址开始到遇到第一个'
\0'
停止计数,如果你只定义没有给它赋初值,这个结果是不定的,它会从字符串首地址一直记下去,直到遇到'
才会停止。
原型:
size_tstrlen(constchar*s);
intmain()
inti=0;
char*he="
Hello,world"
i=strlen(he);
字符串长度为%d\n"
i);
运行结果:
字符串长度为11
strcspn
在串中查找第一个给定字符集内容的段
intstrcspn(char*str1,char*str2);
char*string1="
1234567890"
char*string2="
747DC8"
intlength;
length=strcspn(string1,string2);
Characterwherestringsintersectisatposition%d\n"
length);
strdup
将串拷贝到新建的位置处
char*strdup(char*str);
20
21
alloc.h>
char*dup_str,*string="
abcde"
dup_str=strdup(string);
dup_str);
free(dup_str);
stricmp
以大小写不敏感方式比较两个串
intstricmp(char*str1,char*str2);
ptr=stricmp(buf2,buf1);
strerror
返回指向错误信息字符串的指针
char*strerror(interrnum);
errno.h>
char*buffer;
buffer=strerror(errno);
Error:
buffer);
strcmpi
将一个串与另一个比较,不管大小写
intstrcmpi(char*str1,char*str2);
ptr=strcmpi(buf2,buf1);
strncmp
intstrncmp(char*str1,char*str2,intmaxlen);
22
aaabbb"
bbbccc"
ptr=strncmp(buf2,buf1,3);
ptr=strncmp(buf2,buf3,3);
串拷贝
char*strncpy(char*destin,char*source,intmaxlen);
strncpy(string,str1,3);
string[3]='
不注重大小写地比较两个串
intstrnicmp(char*str1,char*str2,unsignedmaxlen);
BBBccc"
ptr=strnicmp(buf2,buf1,3);
strnset
将一个字符串前n个字符都设为指定字符
char*strnset(char*str,charch,unsignedn);
char*string="
abcdefghijklmnopqrstuvwxyz"
charletter='
x'
stringbeforestrnset:
strnset(string,letter,13);
stringafterstrnset:
strpbrk
在串中查找给定字符集中的字符
char*strpbrk(char*str1,char*str2);
onm"
char*ptr;
ptr=strpbrk(string1,string2);
strpbrkfoundfirstcharacter:
%c\n"
*ptr);
strpbrkdidn'
tfindcharacterinset\n"
strrchr
在串中查找指定字符的最后一个出现
char*strrchr(char*str,charc);
ptr=strrchr(string,c);
strrev
串倒转
char*strrev(char*str);
char*forward="
string"
Beforestrrev():
forward);
strrev(forward);
Afterstrrev():
strspn
在串中查找指定字符集的子集的第一次出现
intstrspn(char*str1,char*str2);
123DC8"
length=strspn(string1,string2);
Characterwherestringsdifferisatposition%d\n"
strstr
在串中查找指定字符串的第一次出现
char*strstr(char*str1,char*str2);
BorlandInternational"
*str2="
nation"
*ptr;
ptr=strstr(str1,str2);
Thesubstringis:
ptr);
strtod
strtod
将字符串转换为double型值
doublestrtod(char*str,char**endptr);
stdlib.h>
charinput[80],*endptr;
doublevalue;
Enterafloatingpointnumber:
gets(input);
value=strtod(input,&
endptr);
Thestringis%sthenumberis%lf\n"
input,value);
strtok
查找由在第二个串中指定的分界符分隔开的单词
char*strtok(char*str1,char*str2);
charinput[16]="
abc,d"
char*p;
/*strtokplacesaNULLterminator
infrontofthetoken,iffound*/
p=strtok(input,"
"
if(p)printf("
p);
/*AsecondcalltostrtokusingaNULL
asthefirstparameterreturnsapointer
tothecharacterfollowingthetoken*/
p=strtok(NULL,"
strtol
将串转换为长整数
longstrtol(char*str,char**endptr,intbase);
87654321"
*endptr;
longlnumber;
/*strtolconvertsstringtolonginteger*/
lnumber=strtol(string,&
endptr,10);
string=%slong=%ld\n"
string,lnumber);
strupr
将串中的小写字母转换为大写字母
char*strupr(char*str);
charstring[]="
abcdefghijklmnopqrstu