jclj.net
当前位置:首页 >> ChAr A和ChAr A >>

ChAr A和ChAr A

char a 表示 定义了一个变量,名叫a, 它是字符类型(占用内存的一个字节) char a[1] 表示 定义了一个数组,名叫a, 它是一个包含一个字符类型数据的数组,这个数组只能存放1个字符类型的数据.两者在不接触指针做函数参数的程序的时候功能是一样的.

前一个 是定义了一个变量, 变量名叫a后一个 是字符常量'a' 这个是独立的 前面不可以加char char 'a'是错误用法.

char c的c是字符变量 char 'a' 的a是字符

char a='a' 是合法的 char a="a' 是不合法的 char型不能为字符串,只能为字符

一般的 指针char *a和 字符型数组char a[]完全没差别char不同 指针指向的是char型的 但是++a后就是指向另一个char型数据了

typedef char a是将char重名为a,typedef(type define(类型定义的意思)),如果你要声明一个char类型的变量,可以用a代替,就是a szString,后面的char a是声明一个char类型的变量,这两句话有着本质上的区别

没有什么不同,都是定义一个指向char型的指针但是要注意的是如果你想在一句话里面2个指针,那么正确的做法应该是char *a,*b;而不是char* a,b;后面那个b只是一个char型变量所以一般提倡使用第一种,避免糊涂搞错,当然如果你仅仅在一句话里面定义一个变量或者是在定义形参的话,那么第二种看上去更直接一点希望对你有帮助

char a='A' 定义char变量a并初始化为字符'A' char a=A 这里A除非是已有的宏定义 或者其他变量 否则编译会出错 因为A并不是合法的常量 你可以写0xA 或者其他常数,比如10一类的 表示初始化为这个ascii码值对应的字符.

char * a[] 定义一个字符型指针变量数组(char *)a[] 将数组a[]强制转化为字符型指针变量数组不知道说的对不对 说错勿喷

char *a[]表示的是数组a[]是一个指向char的指针类型数组,相当于a[]里面的每一个元素都实际值都是一个指向字符串的指针(即存储某个字符串的首地址)后面这个你应该要问的是char (*a)[]吧,不然的话就和第一个一样了char (*a) [N]表示的是指向一个元素为N的字符串数组的指针,说白了就是一个数组指针(指向数组的指针).这个和函数指针有点像 int (*p) (int,int),表示指向返回值为int,并且含有2个int变量的函数

网站首页 | 网站地图
All rights reserved Powered by www.jclj.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com