读书人

关于变量的访问,该怎么解决

发布时间: 2012-02-11 09:51:35 作者: rapoo

关于变量的访问
如下面所代码注释处的疑问,请指教……


C/C++ code
#include <iostream>using namespace std;const int i = 10;int main(){    const int i = 20;    if(1)    {        const int i = 30;        cout << i <<endl;        cout << ::i <<endl; //这里访问的是全局变量的i(值为10),而不是值为20的i                  //在这里我如何才能访问值为20的那个i?    }    return 0;}


[解决办法]
访问不了~~
[解决办法]
可以的,内嵌汇编。
[解决办法]
C/C++ code
#include <iostream>using namespace std;const int i = 10;int main(){    volatile const int i = 20;    if(1)    {        const int i = 30;        cout << i <<endl;        cout << ::i <<endl;        int j=0;        for(j=0;*(int*)((char*)&i+j)!=20&&j<1024;j++)        {            //找20的那个i        }        *(int*)((char*)&i+j)=100;//(char*)&i+j~(char*)&i+j+3就是20的那个i的存储空间    }    cout<<i<<endl;    return 0;} 

读书人网 >C++

热点推荐