C语言实现 数据类型占多少字节指针占多少字节

时间:2021-08-02 04:42:48

具体代码如下所示:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include<stdio.h>
void main()
{
  //使用sizeof验证数据类型在内存中占用的空间大小
//  char
//  int
//  short
//  long
//  unsigned int
//  float
//  double
//  long double
  printf("在64位机器中:\n");
  printf("    char类型占%d个字节\n",sizeof(char));
  printf("    short类型占%d个字节\n",sizeof(short));
  printf("     int类型占%d个字节\n",sizeof(int));
  printf("    long类型占%d个字节\n",sizeof(long));
  printf("unsigned int类型占%d个字节\n",sizeof(unsigned int));
  printf("    float类型占%d个字节\n",sizeof(float));
  printf("   double类型占%d个字节\n",sizeof(double));
  printf(" long double类型占%d个字节\n",sizeof(long double));
  printf("-------------------指针占4个字节---------------------\n");
  char *p0;
  short *p1;
  int *p2;
  long *p3;
  unsigned int *p4;
  float *p5;
  double *p6;
  long double *p7;
  printf("    char类型指针占%d个字节\n",sizeof(p0));
  printf("    short类型指针占%d个字节\n",sizeof(p1));
  printf("     int类型指针占%d个字节\n",sizeof(p2));
  printf("    long类型指针占%d个字节\n",sizeof(p3));
  printf("unsigned int类型指针占%d个字节\n",sizeof(p4));
  printf("    float类型指针占%d个字节\n",sizeof(p5));
  printf("   double类型指针占%d个字节\n",sizeof(p6));
  printf(" long double类型指针占%d个字节\n",sizeof(p7));
}

结果:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
在64位机器中:
    char类型占1个字节
    short类型占2个字节
     int类型占4个字节
    long类型占4个字节
unsigned int类型占4个字节
    float类型占4个字节
   double类型占8个字节
 long double类型占12个字节
-------------------指针占4个字节---------------------
    char类型指针占4个字节
    short类型指针占4个字节
     int类型指针占4个字节
    long类型指针占4个字节
unsigned int类型指针占4个字节
    float类型指针占4个字节
   double类型指针占4个字节
 long double类型指针占4个字节

知识点扩展:

c语言实现十进制与ASCII码互转

?
1
2
3
4
5
//十进制转ASCII码
//年#define KB2ASC(x) (u8)(0x30+x)
//ASCII码转十进制
//年
#define ASC2KB(x) (u8)(x%(0x30))

总结

以上所述是小编给大家介绍的C语言实现 数据类型占多少字节指针占多少字节,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

原文链接:https://blog.csdn.net/qq_21808961/article/details/78107080