zoukankan      html  css  js  c++  java
  • 指针和数组--小总结

    一、总体来说,

    1、对任意数组和指针:数组名可认为是指向数组中第一个元素的指针。虽然是地址,但不同于指针,数组名不是变量,而是常量地址,所以不能修改数组名!!!比如:

    int array0[5] = {0};

    int array1[5] = {0};

    array0 = array1; //试图对数组名array0赋值,这是绝对错误的!

    2、还有对数组名决不能进行++或--操作!!!(自己老是犯这样的低级错误!必改正之!)

    比如:

    int array0[5] = {0};

    int a_temp = *(array0++); //绝对错误!

    3、无论什么类型,在输出结果时,必定会有相应的存储空间存储该结果;所以,必须为结果开辟存储空间:或者预先开辟适当的空间或者动态分配空间;

        这里要注意:决不能通过指针++或--的方式,找到下一个未开辟或未定义区域做下一个存储空间,否则程序极可能崩溃!(血的教训!!!)

    二、针对字符串:

    1、例如:“We are friends!”,这样的字符串将存储于静态存储区,char* str = “We are friends!”;将首地址赋予str,此时,str既不能修改,也不能利用str修改字符串内容,比如str[0] = 'r';是错误的!!

    2、char str[] = “We are friends!”; 则先将字符串copy到动态存储区,再将复制字符串的地址赋予str,因此可以通过str修改复制字符串。

    清醒时做事,糊涂时读书,大怒时睡觉,独处时思考; 做一个幸福的人,读书,旅行,努力工作,关心身体和心情,成为最好的自己 -- 共勉
  • 相关阅读:
    js代码点击触发事件
    鼠标经过事件(onmouseover)
    Python使用win32com实现的模拟浏览器功能
    python 操作剪切板
    python 比较两个yaml文件
    Python:ModuleNotFoundError: No module named 'windows'
    ModuleNotFoundError: No module named 'pymouse'
    Javascript中点击(click)事件的3种写法
    如何调整 php 应用的上传附件大小?
    如何用 iptables 禁止某个ip?
  • 原文地址:https://www.cnblogs.com/hello-yz/p/3214134.html
Copyright © 2011-2022 走看看