当前位置:编程学习 > C/C++ >>

关于全局变量的看法

在网上,看到一个问题 “什么是全局变量?”说实话,这个问题我想了一会儿。觉得有二义性,可能大部分人会说,只要是在堆栈外面定义的 就是全局。 我觉得,全局这个概念,我想反问提问者,是线程全局?进程全局? 好吧,我今天想说说后者的。其实,在写hook的时候,大家都知道,进程需要共享dll中的全局变量。没错,就是它,我觉得被进程共享的 才叫全局。
 

Cpp代码 
#pragma comment (linker, "/SECTION:GlobalValue,RWS")  
 
#include <iostream>  
 
#pragma data_seg("GlobalValue")  
int g_iCnt = 1000;  
#pragma data_seg()  
 
int PlusShow()  
{  
   return printf("PlusShow %d",++g_iCnt);  
}  
 
int Show()  
{  
  return printf("Show %d",g_iCnt);  
}  
 
int main(int argc)  
{  
  if(argc < 2)  
  {  
      return Show();  
  }  
    
  PlusShow();  
  getchar();  
  return 0;  


作者:tbwshc
补充:软件开发 , C++ ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,