zoukankan      html  css  js  c++  java
  • [C++学习历程]基础部分 C++中的指针数组和结构

    作者:苏生米沿

    本文地址:http://blog.csdn.net/sushengmiyan/article/details/19938177

    一。指针

    对学习C++来说,指针是一项重要内容,以前,教科书中考核的时候,对这一块就比较模糊,现在从业两年了,重新回过头来再看一遍,或许会有深刻的理解了吧。

    先看看百度百科中对c++指针的赞扬:


    说指针是C++的灵魂。可见指针的重要性。

    那么究竟什么叫做指针呢?简单的讲,指针就是你写的变量或者对象,在计算机中存放的那个地址,这就是相当于C++给我们提供了一个可以直接查询计算机中某一内存的对象的方法。可以更灵活的实现对计算机的操作。


    在C++中定义一个指针需要这样操作,如:

    int* p;
    char * susheng;

    那么p就代表了一个指向一个int类型的指针,susheng就代表了一个指向char类型的指针。

    可以给指针赋值。如:

    int m = 9;
    int* p = &m;
    那么运行之后 p =9;

    还可以对指针设置指针,就是指针的指针,如:

    int **p =9; 
    还有对函数和数组的指针,暂时先放到后期。

    二、数组

    数组理解起来很容易,就是代表一组数据嘛。怎么表示呢?就是定义的时候加上[]就代表了一个数组。如:

    定义一个整型数组:

    int a[10];

    定义一个浮点型数组:

    float v[3];

    定义一个字符数组:

    char susheng[4];
    定义一个指针数组:

    char* susheng[5];

    数组的大小:括号中,数字就表示数组的大小,而数组总是从0开始算起,就是说,定义了susheng[4]就代表着是ssusheng[0] susheng[1] susheng[2] susheng[3] 而试图访问susheng[4]就会报错。

    数组初始化,可以给数组制定初始化的数据,如:

    susheng[4] ={'s', 'u', 's', 'h'};
    susheng[1]就是 s,susheng[2]就是u...

    值得注意的是,数组可以不全部初始化,剩余的那些自动补充为对应的数据类型的默认值。

    三、常量

    常量就是指不变化的量,比如我们可以定义常量PI 因为圆周率π是不变的,因此这样的我们可以定义为常量,后面使用的时候大家都统一使用这个,比如在进行计算的时候,需要统一定一下误差,避免大家一起开发的时候,各自使用自己的误差,对程序开发来说很实用。

    那么常量如何定义呢?使用关键字const.如:

    const float PI = 3.14159;

    四、结构

    结构体:使用struct定义,是一组自己定义的类型的集合,如:

    struct susheng{
      char name;
      int age;
      boole sex;
    }

    书本里给了几个忠告:

    【1】因为指针相对比较复杂,为避免阅读不方便以及调试不方便出错难以查找等情况,避免非平凡的指针算数。

    【2】不要超出数组越界编写

    【3】尽量使用string而不是已0结尾的char数组。





  • 相关阅读:
    angularjs中设置select的选中项
    axios 下载文件
    解决Springboot集成ActivitiModel提示输入用户名密码的问题
    VMWare14 安装Mac OS系统(图解)
    hexo 搜索功能
    Nginx禁止IP直接访问网站
    不确定理论与多传感器数据融合
    Bayes理论与多传感器数据融合
    从“中英文思维回译法”看中英思维差异
    不确定理论与多传感器数据融合
  • 原文地址:https://www.cnblogs.com/muyuge/p/6152530.html
Copyright © 2011-2022 走看看