解析C++中的字符串处理函数和指针
C++字符串处理函数 其函数原型为 strcat(char[],const char[]);
char str1[30]=″People′s Republic of ″; char str2[]=″China″; cout<<strcat(str1,str2)); //调用strcat函数
People′s Republic of China 连接前后的状况如图所示。 字符串复制函数strcpy 其函数原型为: strcpy(char[],const char[]);
char str1[10],str2[]=″China″; strcpy(str1,str2);
关于字符串复制函数strcpy的几点说明: 其函数原型为 strcmp(const char[],const char[]);
strcmp(str1,str2); strcmp(″China″,″Korea″); strcmp(str1,″Beijing″); 比较的结果由函数值带回: 字符串比较的规则与其他语言中的规则相同,即对两个字符串自左至右逐个字符相比(按ASCII码值大小比较),直到出现不同的字符或遇到′ ′为止。如全部字符相同,则认为相等;若出现不相同的字符,则以第一个不相同的字符的比较结果为准。 注意:对两个字符串比较,不能用以下形式: if(str1>str2) cout<<″yes″;
if(strcmp(str1,str2)>0) cout<<″yes″;
函数原型为: strlen(const char[]);
char str[10]=″China″; cout<<strlen(str);
以上是几种常用的字符串处理函数,除此之外还有其他一些函数。 C++指针的概念 如果在程序中定义了一个变量,在编译时就给这个变量分配内存单元。系统根据程序中定义的变量类型,分配一定长度的空间。例如,C++编译系统一般为整型变量分配4个字节,为单精度浮点型变量分配4个字节,为字符型变量分配1个字节。内存区的每一个字节有一个编号,这图就是“地址”。 请务必弄清楚一个内存单元的地址与内存单元的内容这两个概念的区别。在程序中一般是通过变量名来对内存单元进行存取操作的。其实程序经过编译以后已经将变量名转换为变量的地址,对变量值的存取都是通过地址进行的。这种按变量地址存取变量值的方式称为直接存取方式,或直接访问方式。 还可以采用另一种称为间接存取(间接访问)的方式。可以在程序中定义这样一种特殊的变量,它是专门用来存放地址的。 上图是直接访问和间接访问的示意图。为了将数值3送到变量中,可以有两种方法: 所谓指向,就是通过地址来体现的。 由于通过地址能找到所需的变量单元,因此可以说,地址指向该变量单元。因此将地址形象化地称为“指针”,一个变量的地址称为该变量的指针。 如果有一个变量是专门用来存放另一变量地址(即指针)的,则它称为指针变量。指针变量的值(即指针变量中存放的值)是地址(即指针)。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |