VC++学习总结.docx

上传人:b****6 文档编号:7078292 上传时间:2023-01-17 格式:DOCX 页数:31 大小:339.54KB
下载 相关 举报
VC++学习总结.docx_第1页
第1页 / 共31页
VC++学习总结.docx_第2页
第2页 / 共31页
VC++学习总结.docx_第3页
第3页 / 共31页
VC++学习总结.docx_第4页
第4页 / 共31页
VC++学习总结.docx_第5页
第5页 / 共31页
点击查看更多>>
下载资源
资源描述

VC++学习总结.docx

《VC++学习总结.docx》由会员分享,可在线阅读,更多相关《VC++学习总结.docx(31页珍藏版)》请在冰豆网上搜索。

VC++学习总结.docx

VC++学习总结

一、MessageBox、:

:

MessageBox和AfxMessageBox的区别和联系。

来源:

或者:

二、C、c++中字符串函数的不同

在C语言下,字符串的定义只能是char*或者char[100]数组的类型。

处理这些字符串的简便方法是用C语言库自带的字符串处理函数,这些函数有:

strlen求字符串长度

strcmp比较2个字符串是否一样

strcat字符串连接操作

strcpy字符串拷贝操作

strncat字符串连接操作(前n个字符)

strncpy字符串拷贝操作(前n个字符)

strchr 查询子串

strstr 查询字串

strcpy

函数名:

strcpy

功能:

拷贝一个字符串到另一个

用法:

char*strcpy(char*destin,char*source);

程序例:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

#include

 

#include

 

intmain(void)

 

{

 

charstring[10];

 

char*str1="abcdefghi";

 

strcpy(string,str1);

 

printf("%s\n",string);

 

return0;

 

}

strncpy

函数名:

strncpy

原型:

char*strncpy(char*dest,char*src,size_tn);

功能:

将字符串src中最多n个字符复制到字符数组dest中(它并不像strcpy一样遇到NULL才停止复制,而是等凑够n个字符才开始复制),返回指向dest的指针。

strcat

函数名:

strcat

功能:

字符串拼接函数

用法:

char*strcat(char*destin,char*source);

程序例:

1

2

3

4

5

6

7

8

9

10

11

#include 

#include

voidmain() 

{ 

chardestination[25]; 

char*blank="",*c="C++",*Borland="Borland"; 

strcpy(destination,Borland); 

strcat(destination,blank); 

strcat(destination,c); 

printf("%s\n",destination); 

}

strchr

函数名:

strchr

功能:

在一个串中查找给定字符的第一个匹配之处\

用法:

char*strchr(char*str,charc);

程序例:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

#include

#include

intmain(void)

{

charstring[15];

char*ptr,c='r';

strcpy(string,"Thisisastring");

ptr=strchr(string,c);

if(ptr)

printf("Thecharacter%cisatposition:

%d\n",c,ptr-string);

else

printf("Thecharacterwasnotfound\n");

return0;

}

strcmp

函数名:

strcmp

功能:

串比较

用法:

intstrcmp(char*str1,char*str2);

看Asic码,str1>str2,返回值>0;两串相等,返回0

程序例:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

#include

#include

intmain(void)

{

char*buf1="aaa",*buf2="bbb",*buf3="ccc";

intptr;

ptr=strcmp(buf2,buf1);

if(ptr>0)

printf("buffer2isgreaterthanbuffer1\n");

else

printf("buffer2islessthanbuffer1\n");

ptr=strcmp(buf2,buf3);

if(ptr>0)

printf("buffer2isgreaterthanbuffer3\n");

else

printf("buffer2islessthanbuffer3\n");

return0;

}

strnicmp

函数名:

strnicmp

功能:

将一个串中的一部分与另一个串比较,不管大小写

用法:

intstrnicmp(char*str1,char*str2,unsignedmaxlen);

程序例:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

#include

#include

intmain(void)

{

char*buf1="BBB",*buf2="bbb";

intptr;

ptr=strnicmp(buf2,buf1);

if(ptr>0)

printf("buffer2isgreaterthanbuffer1\n");

if(ptr<0)

printf("buffer2islessthanbuffer1\n");

if(ptr==0)

printf("buffer2equalsbuffer1\n");

return0;

}

strlen

函数名:

strlen

功能:

strlen函数求的是字符串的长度,它求得方法是从字符串的首地址开始到遇到第一个'\0'停止计数,如果你只定义没有给它赋初值,这个结果是不定的,它会从字符串首地址一直记下去,直到遇到'\0'才会停止。

原型:

size_tstrlen(constchar*s);

1

2

3

4

5

6

7

8

9

10

#include

#include

intmain()

{

inti=0;

char*he="Hello,world";

i=strlen(he);

printf("字符串长度为%d\n",i);

return0;

}

运行结果:

字符串长度为11

strcspn

函数名:

strcspn

功能:

在串中查找第一个给定字符集内容的段

用法:

intstrcspn(char*str1,char*str2);

程序例:

1

2

3

4

5

6

7

8

9

10

11

#include

#include

{

intmain(void)

char*string1="1234567890";

char*string2="747DC8";

intlength;

length=strcspn(string1,string2);

printf("Characterwherestringsintersectisatposition%d\n",length);

return0;

}

strdup

函数名:

strdup

功能:

将串拷贝到新建的位置处

用法:

char*strdup(char*str);

程序例:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

#include

 

#include

 

#include

 

intmain(void)

 

{

 

char*dup_str,*string="abcde";

 

dup_str=strdup(string);

 

printf("%s\n",dup_str);

 

free(dup_str);

 

return0;

 

}

stricmp

函数名:

stricmp

功能:

以大小写不敏感方式比较两个串

用法:

intstricmp(char*str1,char*str2);

程序例:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

#include

#include

intmain(void)

{

char*buf1="BBB",*buf2="bbb";

intptr;

ptr=stricmp(buf2,buf1);

if(ptr>0)

printf("buffer2isgreaterthanbuffer1\n");

if(ptr<0)

printf("buffer2islessthanbuffer1\n");

if(ptr==0)

printf("buffer2equalsbuffer1\n");

return0;

}

strerror

函数名:

strerror

功能:

返回指向错误信息字符串的指针

用法:

char*strerror(interrnum);

程序例:

1

2

3

4

5

6

7

8

9

#include

#include

intmain(void)

{

char*buffer;

buffer=strerror(errno);

printf("Error:

%s\n",buffer);

return0;

}

strcmpi

函数名:

strcmpi

功能:

将一个串与另一个比较,不管大小写

用法:

intstrcmpi(char*str1,char*str2);

程序例:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

#include

#include

intmain(void)

{

char*buf1="BBB",*buf2="bbb";

intptr;

ptr=strcmpi(buf2,buf1);

if(ptr>0)

printf("buffer2isgreaterthanbuffer1\n");

if(ptr<0)

printf("buffer2islessthanbuffer1\n");

if(ptr==0)

printf("buffer2equalsbuffer1\n");

return0;

}

strncmp

函数名:

strncmp

功能:

串比较

用法:

intstrncmp(char*str1,char*str2,intmaxlen);

程序例:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

#include

#include

intmain(void)

{

char*buf1="aaabbb",*buf2="bbbccc",*buf3="ccc";

intptr;

 

ptr=strncmp(buf2,buf1,3);

 

if(ptr>0)

printf("buffer2isgreaterthanbuffer1\n");

else

printf("buffer2islessthanbuffer1\n");

 

ptr=strncmp(buf2,buf3,3);

 

if(ptr>0)

printf("buffer2isgreaterthanbuffer3\n");

else

printf("buffer2islessthanbuffer3\n");

return0;

}

strncpy

函数名:

strncpy

功能:

串拷贝

用法:

char*strncpy(char*destin,char*source,intmaxlen);

程序例:

1

2

3

4

5

6

7

8

9

10

11

#include

#include

intmain(void)

{

charstring[10];

char*str1="abcdefghi";

strncpy(string,str1,3);

string[3]='\0';

printf("%s\n",string);

return0;

}

strnicmp

函数名:

strnicmp

功能:

不注重大小写地比较两个串

用法:

intstrnicmp(char*str1,char*str2,unsignedmaxlen);

程序例:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

#include

#include

intmain(void)

{

char*buf1="BBBccc",*buf2="bbbccc";

intptr;

ptr=strnicmp(buf2,buf1,3);

if(ptr>0)

printf("buffer2isgreaterthanbuffer1\n");

if(ptr<0)

printf("buffer2islessthanbuffer1\n");

if(ptr==0)

printf("buffer2equalsbuffer1\n");

return0;

}

strnset

函数名:

strnset

功能:

将一个字符串前n个字符都设为指定字符

用法:

char*strnset(char*str,charch,unsignedn);

程序例:

1

2

3

4

5

6

7

8

9

10

11

#include

#include

intmain(void)

{

char*string="abcdefghijklmnopqrstuvwxyz";

charletter='x';

printf("stringbeforestrnset:

%s\n",string);

strnset(string,letter,13);

printf("stringafterstrnset:

%s\n",string);

return0;

}

strpbrk

函数名:

strpbrk

功能:

在串中查找给定字符集中的字符

用法:

char*strpbrk(char*str1,char*str2);

程序例:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

#include

#include

intmain(void)

{

char*string1="abcdefghijklmnopqrstuvwxyz";

char*string2="onm";

char*ptr;

ptr=strpbrk(string1,string2);

if(ptr)

printf("strpbrkfoundfirstcharacter:

%c\n",*ptr);

else

printf("strpbrkdidn'tfindcharacterinset\n");

return0;

}

strrchr

函数名:

strrchr

功能:

在串中查找指定字符的最后一个出现

用法:

char*strrchr(char*str,charc);

程序例:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

#include

#include

intmain(void)

{

charstring[15];

char*ptr,c='r';

strcpy(string,"Thisisastring");

ptr=strrchr(string,c);

if(ptr)

printf("Thecharacter%cisatposition:

%d\n",c,ptr-string);

else

printf("Thecharacterwasnotfound\n");

return0;

}

strrev

函数名:

strrev

功能:

串倒转

用法:

char*strrev(char*str);

程序例:

1

2

3

4

5

6

7

8

9

10

#include

#include

intmain(void)

{

char*forward="string";

printf("Beforestrrev():

%s\n",forward);

strrev(forward);

printf("Afterstrrev():

%s\n",forward);

return0;

}

strspn

函数名:

strspn

功能:

在串中查找指定字符集的子集的第一次出现

用法:

intstrspn(char*str1,char*str2);

程序例:

1

2

3

4

5

6

7

8

9

10

11

12

#include

#include

#include

intmain(void)

{

char*string1="1234567890";

char*string2="123DC8";

intlength;

length=strspn(string1,string2);

printf("Characterwherestringsdifferisatposition%d\n",length);

return0;

}

strstr

函数名:

strstr

功能:

在串中查找指定字符串的第一次出现

用法:

char*strstr(char*str1,char*str2);

程序例:

1

2

3

4

5

6

7

8

9

#include

#include

intmain(void)

{

char*str1="BorlandInternational",*str2="nation",*ptr;

ptr=strstr(str1,str2);

printf("Thesubstringis:

%s\n",ptr);

return0;

}

strtod

函数名:

strtod

功能:

将字符串转换为double型值

用法:

doublestrtod(char*str,char**endptr);

程序例:

1

2

3

4

5

6

7

8

9

10

11

12

#include

#include

intmain(void)

{

charinput[80],*endptr;

doublevalue;

printf("Enterafloatingpointnumber:

");

gets(input);

value=strtod(input,&endptr);

printf("Thestringis%sthenumberis%lf\n",input,value);

return0;

}

strtok

函数名:

strtok

功能:

查找由在第二个串中指定的分界符分隔开的单词

用法:

char*strtok(char*str1,char*str2);

程序例:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

#include

#include

intmain(void)

{

charinput[16]="abc,d";

char*p;

 

/*strtokplacesaNULLterminator

infrontofthetoken,iffound*/

 

p=strtok(input,",");

if(p)printf("%s\n",p);

 

/*AsecondcalltostrtokusingaNULL

asthefirstparameterreturnsapointer

tothecharacterfollowingthetoken*/

 

p=strtok(NULL,",");

if(p)printf("%s\n",p);

return0;

}

strtol

函数名:

strtol

功能:

将串转换为长整数

用法:

longstrtol(char*str,char**endptr,intbase);

程序例:

1

2

3

4

5

6

7

8

9

10

11

12

13

#include

#include

intmain(void)

{

char*string="87654321",*endptr;

longlnumber;

 

/*strtolconvertsstringtolonginteger*/

 

lnumber=strtol(string,&endptr,10);

printf("string=%slong=%ld\n",string,lnumber);

return0;

}

strupr

函数名:

strupr

功能:

将串中的小写字母转换为大写字母

用法:

char*strupr(char*str);

程序例:

1

2

3

4

5

6

7

8

9

10

11

12

#include

#include

intmain(void)

{

charstring[]="abcdefghijklmnopqrstu

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1