main()主函数内外的变量有何区别??(菜鸟级的问题)
2014-09-03 16:31
309 查看
main函数是一个进程的入口,初次之外,和别的函数无区别,你说main函数内的变量和函数外定义的变量有什么区别?
主要是作用域和生存周期的问题
main函数里定义的并非全局变量,只是在main函数里有效.如果程序里有多个函数,定义的全局变量在这些函数里都可以使用,而在main中定义的只能在main中使用,其他函数不可以直接调用比如:
int n=0;
void f()
{
n++;
}
int main()
{
n++;
f();
return 0;
}
如果int n定义在main中
void f();
int main()
{
int n=0;
n++;
return 0;
}
void f()
{
n++;//error ,此处编译都不会通过.
}
要搞清全局变量和局部变量的区别,全局变量是程序的各个函数都可以调用的,而局部变量只在函数内部有效.
主要是作用域和生存周期的问题
main函数里定义的并非全局变量,只是在main函数里有效.如果程序里有多个函数,定义的全局变量在这些函数里都可以使用,而在main中定义的只能在main中使用,其他函数不可以直接调用比如:
int n=0;
void f()
{
n++;
}
int main()
{
n++;
f();
return 0;
}
如果int n定义在main中
void f();
int main()
{
int n=0;
n++;
return 0;
}
void f()
{
n++;//error ,此处编译都不会通过.
}
要搞清全局变量和局部变量的区别,全局变量是程序的各个函数都可以调用的,而局部变量只在函数内部有效.
相关文章推荐
- 当主函数与中断函数共享变量问题
- CMainFrame::OnCreate 中开线程,线程函数中需要访问CMainFrame类的变量,引起的致命问题
- afxgetapp->afxmainwnd 与afxgetmainwnd的区别 /线程中调用afxgetmainwnd的问题
- java中一个值得注意的问题---类成员初始化与变量初始化的区别
- 主函数main中变量(int argc…
- 主函数main中变量(int argc,char *argv[])的含义
- linux shell 的变量问题 &&export 语句作用 &&su 与 su - 的区别
- Java菜鸟学习笔记(2)--Ubuntu JDK环境变量配置与常见问题
- Java菜鸟学习笔记--配置篇(一):Windows JDK环境变量配置与常见问题
- 主函数中的局部变量定义时容易出现的问题
- 主函数main中变量(int argc,char *argv[])的含义
- 主函数 main WinMain _tmain _tWinMain 的区别
- 主函数 main WinMain _tmain _tWinMain 的区别
- Java菜鸟学习笔记--配置篇(二):Ubuntu JDK环境变量配置与常见问题
- 主函数 main WinMain _tmain _tWinMain 的区别
- 主函数main中变量(int argc,char *argv[])的含义。。。
- 菜鸟级别的问题:如何配置Java环境变量
- 主函数 main WinMain _tmain _tWinMain 的区别
- 主函数 main WinMain _tmain _tWinMain 的区别
- 主函数 main WinMain _tmain _tWinMain 的区别