C语言 全局变量 - C语言零基础入门教程
目录
- 一.全局变量简介
- 二.全局变量使用
- 三.全局变量使用注意事项
- 四.猜你喜欢
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门
一.全局变量简介
在所有函数外部定义的变量称为全局变量(Global Variable),它的作用域默认是从定义变量的位置到本源文件结束都有效。
/******************************************************************************************/
//@Author:猿说编程
//@Blog(个人博客地址): www.codersrc.com
//@File:C语言教程 - C语言 全局变量
//@Time:2021/07/18 07:30
//@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
/******************************************************************************************/int a, b; //全局变量void func1(){int c, d; //局部变量//TODO:
}int main(){int e, f; //局部变量//TODO:return 0;
}
二.全局变量使用
/******************************************************************************************/
//@Author:猿说编程
//@Blog(个人博客地址): www.codersrc.com
//@File:C语言教程 - C语言 全局变量
//@Time:2021/07/18 07:30
//@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
/******************************************************************************************/#include <stdio.h>int x = 10;
int y = 20;void func1(){x += 10;y += 20;printf("函数:%s 中 x = %d y = %d \n",__FUNCTION__,x,y);}void func2(){x += 10;y += 20;printf("函数:%s 中 x = %d y = %d \n",__FUNCTION__,x,y);}
int main(){func1();func2();printf("函数:%s 中 x = %d y = %d \n",__FUNCTION__,x,y);return 0;
}
/*
输出:函数:func1 中 x = 20 y = 40
函数:func2 中 x = 30 y = 60
函数:main 中 x = 30 y = 60
*/
由上面代码可以看出:全局变量 x ,y 能在三个函数中直接使用,并没有和局部变量一样需要声明;
三.全局变量使用注意事项
我们对上面代码稍微做做修改:
/******************************************************************************************/
//@Author:猿说编程
//@Blog(个人博客地址): www.codersrc.com
//@File:C语言教程 - C语言 全局变量
//@Time:2021/07/18 07:30
//@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
/******************************************************************************************/#include <stdio.h>void func1(){x += 10;y += 20;printf("函数:%s 中 x = %d y = %d \n",__FUNCTION__,x,y);}int x = 10;
int y = 20;void func2(){x += 10;y += 20;printf("函数:%s 中 x = %d y = %d \n",__FUNCTION__,x,y);}
int main(){func1();func2();printf("函数:%s 中 x = %d y = %d \n",__FUNCTION__,x,y);return 0;
}
/*
输出:main.cpp: In function ‘void func1()’:
main.cpp:6:5: error: ‘x’ was not declared in this scope6 | x += 10;| ^
main.cpp:7:2: error: ‘y’ was not declared in this scope7 | y += 20;| ^*/
编译直接报错:提示 x,y 在函数 func1 中没有声明,所以如果需要使用全局变量,最好是定义在该文件的最顶部,这样该文件中的所有函数都可以直接使用!
四.猜你喜欢
- C 语言 数组下标越界和内存溢出区别
- C 语言 使用指针遍历数组
- C 语言 指针和数组区别
- C 语言 指针数组和数组指针区别
- C 语言 野指针
- C 语言 函数值传递和址传递
- C 语言 函数不定长参数
- C 语言 函数指针
- C 语言 指针函数
- C 语言 回调函数 callback
- C 语言 #pragma once
- C 语言 #include <> 与 #include “” 区别
- C 语言 const 修饰函数参数
- C 语言 const 和 define 区别
- C 语言 #运算符
- C 语言 ##运算符
- C 语言 __VA_ARGS__
- C 语言 ##__VA_ARGS__
- C 语言 函数不定长参数 ##__VA_ARGS__经典案例
- C 语言 va_start 宏
- C 语言 va_end 宏
- C 语言 va_arg 宏
- C 语言 vprintf 函数
- C 语言 va_start / va_end / va_arg 自定义 printf 函数
- C 语言 main 函数
- C 语言 main 函数参数 main(int argc, char *argv[])
- C 语言 exit 函数
- C 语言 abort 函数
- C 语言 assert 函数
- C 语言 局部变量
- C 语言 全局变量
未经允许不得转载:猿说编程 » C 语言 全局变量
C语言 全局变量 - C语言零基础入门教程相关推荐
- C语言 const 修饰函数参数 - C语言零基础入门教程
C语言 const 修饰函数参数 - C语言零基础入门教程 目录 一.const 简介 1.const 修饰变量 2.const 修饰指针 3.const 修饰在函数名前面 4.const 修饰在函数 ...
- 视频教程-Python零基础入门教程-Python
Python零基础入门教程 从2012年从事互联网至今有7年软件编程经验,曾任职国内北京互联网公司,中南林业大学授课Python 现任逻辑教育Python课程负责人,精通Python语言,精通人工智能 ...
- Python零基础入门教程( 快速入门)
前言 学无止境,无止境学. 今天要给大家分享的是<Python零基础入门教程01 快速入门>,这是一个系列的教程,从零基础到项目实战.在本教程中,我会给大家介绍Python入门的一些基础知 ...
- C++零基础入门教程:基础篇(一)
前言 嘿嘿,我叕来啦─=≡Σ(((つ•̀ω•́)つ!别问我为什么突然变成了零基础入门教程(一),因为前面那三篇都是基础的不能在基础的教程了.(其实是因为顺序乱了,而且那时候没有单独弄一个专栏,后面我会 ...
- 周易零基础入门教程(一)
感觉这几篇简单的教程很不错哦.大概由于以前看过这类书籍,估计也是很零散的,所以我读这几篇感觉很亲切,没啥难点,一口气读完了,醍醐灌顶.接下来就是自己慢慢琢磨的节奏了! 周易零基础入门教程 作者:江南易 ...
- python怎么输出浮点数_python 零基础入门教程第 2 章:基本数据类型 (一)
一.什么是数据类型 编程语言通过一些复杂的计算机物理底层机制,创造不同类型的数据,用来表示现实世界中的不同信息,以便于计算机更好的存储和计算. 每种编程语言都会有一些基本的数据类型用来表示现实世界中的 ...
- SEO零基础入门教程(外链的发布和软文编写)
seo的作用是众所周知的,对网站进行seo优化,可以给网站带来大量的搜索引擎流量.但是想要做好网站优化也有难度,尤其是对于seo新手来说,因为缺乏理论和实战,所以seo新手需要多加练习.那么具体seo ...
- 九宫怎么排列和使用_剪映零基础入门教程第三十七篇:一学就会系列之九宫格小程序配音...
很多玩儿抖音的朋友都看过九宫格视频,但是并不是每个玩抖音的人都会制作这个九宫格视频,实际这个需要借助小工具来帮忙,而常用抖音的朋友们会对剪映更加熟悉一些,且九宫格视频在剪映内的制作方式则比较简单.那么 ...
- 计算机pscs6教程,photoshop CS6零基础入门教程
<photoshop CS6零基础入门教程>针对零基础学员开设,以教案和实际操作演示相结合的方式,详细地介绍adobe photoshop cs6的各项工具和命令.由浅入深.循序渐进地全面 ...
- finereport自学教程_办公物语丨Finereport零基础入门教程,你不可缺少的报表神器...
原标题:办公物语丨Finereport零基础入门教程,你不可缺少的报表神器 ⌛ 小办又来了,快,搬好你的小板凳. 今天小办要着重讲一下 之前推文里提到过的制表神器. 当你逐渐发现Excel不能满足你的 ...
最新文章
- Android深度探索(卷1)HAL与驱动开发第五章总结
- 【最佳实践】如何通过OSS的Bucket Policy设置访问授权?
- vue 加载页面时触发时间_解析Vue项目的四个方面优化
- c与python的区别-c 跟 python的区别有哪些
- 利用matlab对xml文件进行批量处理
- 如何去调试前端JS代码?以Chrome谷歌浏览器为例
- CodeForces - 246E Blood Cousins Return(树上启发式合并)
- Onedark风格配色方案
- codeforces 111A/112C Petya and Inequiations
- 链表知识体会总结(仅供参考)
- opencv一些常用的操作
- C++基础::shared_ptr 编程细节(一)
- 数据分析前的准备工作
- 190410每日一句
- 微信应用开发简单示例,学生自助报道系统
- [渝粤教育] 西南科技大学 行政法学与行政诉讼法学 在线考试复习资料(1)
- 晶圆切割机_单轴晶圆划片机特点:
- 无界鼠标 (Mouse without Borders)简单使用教程
- MOOC 苏小红C语言 第四周编程题
- Spring中的IOC介绍
热门文章
- 图文存储常识:单机、集中、分布式、云、云原生存储
- 2020-09-01
- 阿里云飞天大数据产品价值解读——《一站式高质量搜索开放搜索》
- 支付宝的商业与技术创新双轮驱动 创造数字时代普惠金融“奇迹”
- 异构计算助力客户春节webp图片编码
- 数据备份资深老牌厂商 Commvault 的新玩法
- 钉钉推出“钉工牌”,门禁、差旅、员工福利一码通用
- 抢先看!Kubernetes v1.21 新特性一览
- 苹果或推出Windows版Safari浏览器;微软正“取下”Chromium版Edge浏览器的Beta标签;亚马逊申请新专利……...
- Spark精华问答 | 为什么选择Spark作为流计算引擎?