#include <iostream> #include <string> using namespace std; int main() { const int i=3; const int *p=&i; cout<<*(p)<<endl; const int j=9; cout<<*(p+1)<<endl; return 0; } 这个指针是危险的,GCC 的结果是 3,2293572(不确定的值); #include <iostream> #include <string> using namespace std; int main() { const int i=3,j=6; const int *p=&i; cout<<*(p+1)<<endl; return 0; } 这里又是正常的,GCC 的结果是 6; 说明只有连续定义变量的时候,在内存是相邻存放的。