hello是c语言中的变量吗,C语言hello world详解
初学任何一门编程语言,最先接触的例子一定是hello xxx(我也不知道这个神奇的传统是如何形成的)
初学者可能有很多地方不太理解:这里为什么要这样写?? 这个又是神马意思??
下面我来对hello world 做一个详细的解析来加深大家对C语言的理解吧。
首先贴出书上的例程:
#include
int main (void)
{
printf("Hello world!\n");
return 0;
}
一个程序,简单的可以理解为你让计算机去做一件事情。上面这个就是你让计算机在屏幕上输出hello world。
第一句有什么卵用?
首先从字面上解释,include是包含的意思,那它要包含啥呢?后面有个stdio.h。至于# <>这两个约定俗成的符号,是为了让计算机识别的。stdio,其实是standard input output的缩写,即基本输入输出。而stdio.h可以形象地理解为是一个工具箱,里面包含了各种造好的工具,当然,里面没有真正的锤子或是榔头。计算机要用到这个工具箱来进行基本输入输出操作,而后面用到的printf就相当于这里面的一把螺丝刀。
int main(void)又是什么鬼
首先来说一下函数,计算机里面的函数类似数学上的函数,但又不太一样。数学上,自变量x0经过f()的作用后得到了f(x0)。那么在上面的程序里,main相当于f,f(x0)是一个值(可以是整数、分数...),那么main()也是一个值,int是integer(整数)的缩写,表明main作用出来的是一个整数。像f(x)一样,这个main函数也需要有自变量"x"的输入啊!void翻译过来是“无效的,空的”,放在main的自变量位置,说明main的自变量输入是空,即“我并不需要自变量”。
{ 我是函数主体 }
像f一样,main也是有特定功能的,于是约定要被执行的功能被放在了一对花括号中。
printf("Hello world!\n");
printf()类似main(),也是一个函数。它从哪来的??对,就是我们之前包含的stdio.h工具箱。printf()的自变量就是"Hello world!\n"。日常生活中双引号中间的是一句话。这边也是类似,不过它有个更高逼格的名字:字符串。
\n,固定的表达,next line,表示换行。为什么要有 \ ? 不然n就识别不出来了!
return 0;字面意思,返回0。前面说过,main()是一个整数,最后总会要有一个值的!return+值 就是表示给这个main()一个值。(0一般表示程序运行成功,所以通常main返回0)
上课的void main()是什么鬼?
与int main(void)类比一下,int表示整数,也就是最后要返回一个整数值给main,而换成了void,表示“我不要返回值”。所以细心的人肯定发现了老师并没有return 0;这句。main()括号里面是空的,默认没有参数。不用管了。
一个hello world还是值得细细揣摩的。等到正式学起来大家就会有更深的理解了。
©Fing
转载请注明出处
hello是c语言中的变量吗,C语言hello world详解相关推荐
- nodejs 获取系统环境变量_Node.js中环境变量process.env的一些事详解
前言 最近这两天在和运维GG搞部署项目的事儿.碰到一个问题就是,咱们的dev,uat,product环境的问题. 因为是前后端分离,所以在开发和部署的过程中会有对后端接口的域名的切换问题.折腾了一下午 ...
- c语言 信号函数,C语言中进程信号集的相关操作函数详解
C语言sigismember()函数:测试某个信号是否已加入至信号头文件:#include 定义函数:int sigismember(const sigset_t *set, int signum); ...
- 在c语言中 使用变量的要求,关于C语言中变量的探讨
摘 要: 在所有的计算机高级语言中,都存在着变量这样一个重要的概念.变量是计算机高级语言程序的重要成分之一.与其他语言中的变量相比,C语言中的变量所包含的内容更为丰富,包括变量的定义.数据类型.变量数 ...
- c语言中外部变量的使用方法,C语言外部变量的使用以及erxtern的用法
网上有很多帖子问C语言中extern的用法,而且回答的详细程度各尽不同. 所以我就像写一篇博文来谈谈我对extern的看法,不一定十分恰当,只当大家共勉. 变量定义性声明和引用性声明 变量的声明有两种 ...
- r语言 分类变量 虚拟变量_R语言中的变量
r语言 分类变量 虚拟变量 R语言| 变数 (R Language | Variables) In the previous tutorial, we have come across the bas ...
- c语言根据变量作用域不同分为,C语言中不同变量的访问方式
8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? C语言中的变量大致可以分为全局变量,局部变量,堆变量和静态局部变量,这些不同的变量存储在不同的位置,有不同的生命周期.一 ...
- c语言中有bool变量吗,C语言中有bool类型吗?
之前一直都没有注意到,最近在用C语言写DSP算法时,偶然间发现我函数中定义的bool类型的变量在VC6.0(我主要用它来检查一下语法错误)中编译居然报错了,说是bool类型没有定义.用了这么久的C和C ...
- c加加属于面向对象的程序设计语言吗,下列语言中属于面向对象的程序设计语言是______。A、Visual BasicB、PASCALC、CD、FORTRAN...
下列语言中属于面向对象的程序设计语言是______.A.Visual BasicB.PASCALC.CD.FORTRAN 更多相关问题 经纬仪如存在指标差,将使观测结果出现( ). 德治的约束作用主要 ...
- verilog语言中的@什么意思 verilog语言中的@什么意思
verilog语言中的@什么意思 verilog语言中的@什么意思 2012-05-27 22:47 在英语中@ 读at,也就是在--的时候,这个小学应该学过,对吧.verilog中@ 的含义就是触发 ...
最新文章
- Linux cmake使用入门
- php 数据透视表,php – 使用Laravel模型过滤数据透视表数据
- 双指针算法基本原理和实践
- JS setTimeout 与 setInterval
- vue饼图组件_vue2.0 自定义 饼状图 (Echarts)组件
- iOS性能优化篇 —— 耗电优化总结
- 论述计算机与外设的访问控制方法,试论述计算机与外设访问控制的方法有多少种各有什么优缺点...
- 案例:实现用户注册功能
- 机器学习实战(MachineLearinginAction) 第一章
- 利用函数求数组中的最大值
- 《算法竞赛入门经典》例题5.4.1
- 内网通免广告/积分码
- aceAdmin框架依赖
- Failed to obtain JDBC Connection;
- 语音机器人在人工智能领域的发展
- unity3d+虚拟城市:技术要点
- php 上传绕过,文件上传验证绕过技术总结
- 微信h5缓存清理技巧
- 知其然,而不知其所以然
- 联想笔记本声音太小怎么办_笔记本声音太小,小编告诉你笔记本电脑声音太小解决方法...
热门文章
- 【译】MVVM Tutorial with ReactiveCocoa: Part 1/2
- 编译mgiza的准备
- Curator counters
- Java多线程协作(wait、notify、 notifyAll)
- 巧用find命令清除系统垃圾
- Access里执行SQL
- 2003系统服务器,雨林木风 windows server 2003企业版服务器系统
- @query 注解的定义_SpringDataJpa(5)---定义查询方法
- Ajax全局加载框(Loading效果)的配置
- mapreduce 丢数据_大数据之MapReduce详解