04(C++二级)

1.常量字符串“ABCDE”中,结尾还保留一个空字符‘ \0’ , 总共有6个字符,所以字符数组s使用常量字符串初始化时,s的数组大小必须  >=  6  。如:char s[6] = "abcde";     但读取时字符范围为0~4,s[5]为\0  

2."hello"为 const char * 类型 无法将值分配到 char 或 char * 类型的实体。可以分配给string类型的实体。char只能分配字符。

 

3.typedef用途

  1. 定义一种类型的别名       typedef  类型名  别名 

  2.   定义struct结构体别名

  3. 用typedef来定义与平台无关的类型。
  4. 为复杂的声明定义一个简单的别名.     如:typedef int (*A) (char, char);A是我们定义的别名,表示的是一个指向函数的指针,该函数有两个char类型的参数,返回一个int类型的值。则A类型的对象可以指向任何符合上述规则的函数。   

typedef需要注意的事项

  我们看一下下面的示例:

  p1和p2都是常量指针,意思是指针指向的内容不能修改,而指针是可以修改的。
  那为什么p1++正常,而p2++报错呢。


      对于p1++,我们不用再解释了,因为常量指针是可变的。
  而p2是我们定义的别名,而不是系统固有类型,编译器在编译时,会认为p2是常量,不可修改,
  所以p2++会报错。

4.函数声明时可以省略参数名 。。。

5.函数默认参数 

.  默认参数不能在声明和定义中同时出现

  

                                            

     

6.运算符重载

  

posted @ 2022-09-19 20:46  这就叫做C++  阅读(35)  评论(0编辑  收藏  举报