zoukankan      html  css  js  c++  java
  • c 指针兼容性问题

    指针兼容性问题:   

    1. const指针不能赋值给非const指针.   
    2. 非const指针可以赋值给const 指针,但前提是只是一层间接运算   
     1   Example:
     2   int *pt1;
     3       const *pt2;
     4       const **pt3;
     5   
     6       pt2=pt1;//OK
     7       pt1=pt2;//NO
     8       pt3=&pt2;//OK
     9       pt3=&pt1;//NO double indirection
    10   Problem:
    11   pt1=pt2;//NO
    12   pt3=&pt2;//OK
    13   pt3=&pt1;//NO double indirection
    14   
    15   Explain:
    16   const n=5;
    17   Int *p1;
    18   Const int **p2;
    19   //consumption  p2=&p1; is right
    20   p2=&p1;
    21   *p2=&n;//OK ,but this mean p1=&n;
    22   *p1=10;//OK because p1 is not const ,but that will be contradicted with consumption

    指针兼容性问题:   const指针不能赋值给非const指针.   非const指针可以赋值给const 指针,但前提是只是一层间接运算   Example:   int *pt1;       const *pt2;       const **pt3;          pt2=pt1;//OK       pt1=pt2;//NO       pt3=&pt2;//OK       pt3=&pt1;//NO double indirection   Problem:   pt1=pt2;//NO   pt3=&pt2;//OK   pt3=&pt1;//NO double indirection      Explain:   const n=5;   Int *p1;   Const int **p2;   //consumption  p2=&p1; is right   p2=&p1;   *p2=&n;//OK ,but this mean p1=&n;   *p1=10;//OK because p1 is not const ,but that will be contradicted with consumption

  • 相关阅读:
    取三级分销上下级用户id
    Map集合
    Log4j
    异常
    逻辑运算符
    变量
    变量名命名规则
    命名法
    Nessus
    Nmap扫描工具
  • 原文地址:https://www.cnblogs.com/cz-blog/p/4133539.html
Copyright © 2011-2022 走看看