小编jam*_*woo的帖子

为什么在使用类似逻辑增加两种不同的指针类型时,我会得到不同的地址?

我不明白为什么我的花车的地址上升了16,当我的花车的大小是4.有人可以解释一下吗?

码:

char* mychar   = new char[SIZE];
float* myfloat = new float[SIZE];

for(int i = 0; i < SIZE; i++)
{
    mychar[i] = 'A' + i;
    myfloat[i] = 101 + i; 
}

for(int i = 0; i < SIZE; i++)
    {
        cout << setw(12) << "new char @ <"  << static_cast<void*>(mychar) + sizeof(char)*i  << ">=<" << mychar[i]  << ">" 
             << setw(14) << "   new float @ <" << myfloat + sizeof(float)*i                    << ">=<" << myfloat[i] << ">\n"; 
    }

cout<< "Size …
Run Code Online (Sandbox Code Playgroud)

c++ pointers pointer-arithmetic

2
推荐指数
1
解决办法
80
查看次数

标签 统计

c++ ×1

pointer-arithmetic ×1

pointers ×1