怎么确定一个变量的类型
来源:互联网 发布:单片机地址总线 编辑:程序博客网 时间:2024/05/01 08:47
例如 int * p[10]
怎么确定这个变量的类型呢,众所周知,利用sizeof一个变量,和一个变量的类型得到的值应该是相同的。
由此函数可以看出打印出来的数据是相同的,
int * p[10] * 和p[10]他们2个类型是一样的(p[10]就相当于*(p+10))所以他们的优先级是一样的
优先级一样的情况下,按照右结合性来计算,所以这里p离方括号最近,所以这是一个数组他有10个元素
可以看成int * A对它取每个元素,那么每个元素就是一个指针(相当于一个相同元素的集合,所以可以看成一个数组)
所以这里
p[0]
p[1]
p[2]....都是一个指针
例如int (*p)[10]
怎么确定这个变量的类型呢,众所周知,利用sizeof一个变量,和一个变量的类型得到的值应该是相同的。
如下:
#include <stdio.h>int main(void){int * p[10];printf("%ld %ld\n", sizeof(p),sizeof(int * [10]));//我这里打印出来40(32位系统)告诉我们这应该是一个数组类型return 1;}
由此函数可以看出打印出来的数据是相同的,
int * p[10] * 和p[10]他们2个类型是一样的(p[10]就相当于*(p+10))所以他们的优先级是一样的
优先级一样的情况下,按照右结合性来计算,所以这里p离方括号最近,所以这是一个数组他有10个元素
可以看成int * A对它取每个元素,那么每个元素就是一个指针(相当于一个相同元素的集合,所以可以看成一个数组)
所以这里
p[0]
p[1]
p[2]....都是一个指针
#include <stdio.h>int main(void){int * p[10];int a = 0;int b;int c;//这里的p[0]就是a的地址,取*之后就是a的值p[0] = &a;*p[0] = 2;printf("%ld %ld\n", sizeof(p),sizeof(int * [10]));printf("%d\n",a);return 1;}
例如int (*p)[10]
#include <stdio.h>int main(void){int (*p)[10];printf("%ld %ld\n",sizeof(p),sizeof(int (*)[10]));//打印出来4,4告诉我们这应该是一个指针类型printf("%ld %ld\n",sizeof(*p),sizeof(int [10]));//代表*p是一个指针,指向一个数组类型的指针,指向10整形类型的数组int a[10]={1};int b[10]={1};p = &a;//指向整个数组int * q = b;//指向首元素的指针printf("%p\n", a);printf("%p\n", &a);return 0;}
0 0
- 怎么确定一个变量的类型
- verilog模块中各个变量的类型怎么确定
- python3怎么判断一个变量的类型(isinstance,type)
- C/C++每日一课 >> [原创]细说如何确定一个变量的类型(2005-04-25)
- matlab-基础 确定变量类型
- c++中怎么判断一个string类型的字符串变量是否为数字?
- c++中怎么判断一个string类型的字符串变量是否为数字?
- c++中怎么判断一个string类型的字符串变量是否为数字?
- string 类型的两个变量怎么比较
- swift 请问怎么查看变量的类型
- 查询一个变量的类型
- 查看一个变量的类型
- 判断一个变量的类型
- 练习2-1 编写一个程序以确定分别由signed及unsigned限定的char、short、int、与long类型变量的取值范围
- 练习2-1 编写一个程序以确定分别由signed及unsigend限定的char short int 与long类型变量的取值范围
- 练习 2-1 编写一个程序以确定分别由 signed 及 unsigned 限定的 char、short、 int 与 long 类型变量的取值范围。
- 怎么拿到一个控件的标签类型
- 怎么计算出浮点类型表示的大小,并确定有效位数
- 纵向 及纵向一体化简介
- 关于排列组合问题的基础补充
- 郭广昌:有些事情我始终认为马云是错的
- POJ1050 To the Max
- 10 个很棒的 jQuery 代码片段
- 怎么确定一个变量的类型
- hdu,2050,折线分割平面
- 学术休假---100~999中的水仙花数
- 游戏服务器构架优秀文章(转载)
- Java - Warning: Unchecked cast from object to array list
- Max Points on a Line
- Maven学习笔记(八)Maven的入门使用—2.编写主代码
- CSS中如何使父DIV内部的DIV垂直居中对齐!!!!
- 阿里巴巴网站推广——扬州渠道中心