Heim  >  Fragen und Antworten  >  Hauptteil

c++ - 请教c 里面地址的一个基础知识

下面是关于二叉树的代码----pos代表了根据前序遍历pre_str确定了根节点在中序遍历中的位置.

int pos = strchr(in_str, pre_str[0]) - in_str;

我知道指针就是代表地址的一个 unsigned int, 我想问的是这样直接用指针加减来得到的位置为什么不考虑到 sizeof(int), 是说这些指针都是和数据类型的size无关的吗? 有错误的话请大家指正下.

高洛峰高洛峰2714 Tage vor555

Antworte allen(1)Ich werde antworten

  • 迷茫

    迷茫2017-04-17 15:26:45

    指针的加减就已经把偏移量算进去了,比如int*的指针加n,其内存地址就是加n*sizeof(int),并不是按照内存地址直接来加减的。

    Antwort
    0
  • StornierenAntwort