A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© 明天过后1 中级黑马   /  2014-10-1 20:57  /  963 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 明天过后1 于 2014-10-1 20:59 编辑

以下是个人对指针的看法,如果欢迎各位指正和补充:
  指针占用8个字节内存空间 :
       1. 指针的作用 : 用来存放地址,并且可以通过地址来直接操作响应的内存。              2. 对于64位编译系统表示一个地址需要8个字节(64位)空间来存储,同理,32位编译器就需要4个字节。
  指针变量类型的作用 :
      1. * 号对于指针来说是取出对应地址的内容

      2. 指针一次读取操作要读取多少个字节?这就需要指针变量的类型来决定了


  那就用代码来证实一下吧 :

/*
  这里用的是32位编译器
*/
#include <stdio.h>  
int main(){
    printf("double's size = %d\n",sizeof (double)); // double's size = 8
    printf("int's size = %d\n",sizeof (int)); // int's size = 4

    double num1 = 10.0;
    int num2 = 10;

    double *p1 = &num1;
    int *p2 = &num2;

    printf("double*'s size = %d\n",sizeof (double *)); // double*'s size = 4
    printf("int *'s size = %d\n",sizeof (int *)); // int *'s size = 4

    printf("double 类型指针一次读取,操作空间:%d\n",sizeof *p1); // double 类型指针一次读取,操作空间:8
    printf("int 类型指针一次读取,操作空间:%d\n",sizeof *p2); // int 类型指针一次读取,操作空间:4

    system("pause");
    return 0;
}



0 个回复

您需要登录后才可以回帖 登录 | 加入黑马