指针:
基本类型的指针都是占4个字节
数组的话就是乘以相应的位数
基本类型:
int--四个字节
double--八个字节
float---4个字节
short--两个字节
char--一个字节
unsign char (听说这个可以表示为byte)--一个字节
测试结构如下:
测试代码:
#include<stdio.h> int main() { printf("------------------指针类型----------------------\n"); int *_int; int len = sizeof(*_int); printf("*int:%d\n", len); short *_short; len = sizeof(_short); printf("*short:%d\n",len); double *_double; len = sizeof(_double); printf("*double:%d\n",len); float *_float; len = sizeof(_float); printf("*float:%d\n",len); char *_char; len = sizeof(_char); printf("*char:%d\n",len); unsigned char *_byte; len = sizeof(_byte); printf("*byte:%d\n",len); short *_shortArray[2][3]; len = sizeof(_shortArray); printf("*shorArrayt:%d\n",len); double *_doubleArray[2][3]; len = sizeof(_doubleArray); printf("*doubleArray:%d\n",len); float *_floatArray[2][3]; len = sizeof(_floatArray); printf("*floatArray:%d\n",len); char *_charArray[2][3]; len = sizeof(_charArray); printf("*charArray:%d\n",len); unsigned char *_byteArray[2][3]; len = sizeof(_byteArray); printf("*byteArray:%d\n",len); int *_intArray[2][3]; len = sizeof(_intArray); printf("*intArray:%d\n", len); printf("------------------实际类型----------------------\n"); int a_int; len = sizeof(a_int); printf("a_int:%d\n", len); short a_short; len = sizeof(a_short); printf("a_short:%d\n",len); double a_double; len = sizeof(a_double); printf("a_double:%d\n",len); float a_float; len = sizeof(a_float); printf("a_float:%d\n",len); char a_char; len = sizeof(a_char); printf("a_char:%d\n",len); unsigned char a_byte; len = sizeof(a_byte); printf("a_byte:%d\n",len); short a_shortArray[2][3]; len = sizeof(a_shortArray); printf("a_shortArray:%d\n",len); double a_doubleArray[2][3]; len = sizeof(a_doubleArray); printf("a_doubleArray:%d\n",len); float a_floatArray[2][3]; len = sizeof(a_floatArray); printf("a_floatArray:%d\n",len); char a_charArray[2][3]; len = sizeof(a_charArray); printf("a_charArray:%d\n",len); unsigned char a_byteArray[2][3]; len = sizeof(a_byteArray); printf("a_byteArray:%d\n",len); int a_intArray[2][3]; len = sizeof(a_intArray); printf("a_intArray:%d\n", len); }
原文:http://www.cnblogs.com/mynona/p/3633326.html