上篇我们写了一个最简单的程序。这个简单的程序包含了很多重要的内容。本篇我们通过这个最简单的Hello World程序逐一讲解C语言程序的一些特点。

打开Visual Studio 2013

通过菜单->打开->项目/解决方案打开上次写的Helloworld代码。

打开上次成的解决方案“C语言基础.sln”

得到上次的程序如下:

#include<stdio.h>
#include<stdlib.h>
/*开始我的第一个C语言程序!*/
int main(void)
{
printf("Hello,world.\n");
system("pause"); /*使程序运行结束后暂停,防止结果一闪而过*/
return0;
}

1、完整的程序。

上面的Helloworld就是一个最简单的完整程序,只有9行。一个C语言是由两个部分组成:定义和函数,至少有一个主函数。前两行#include<stdio.h>和#include<stdlib.h>可以把它看做定义部分。第4行到第9行是数部分。知道这个组成有什么用?我们就可以对我们以后编的程序进行评判了。如果程序没有定义,或没有主函数则一定是不完整的。

2、程序的主函数

程序的第四行是主函数的开始。main这个函数是C语言的重要内容,如果我们编写的是一个可执行程序,运行这个程序必须有一个唯一的入口,C语言的这个入口就是main。

3、程序的语法

语法就是语言的规定,是语言的法律,违背了这个规定,这个程序就不能编译通过。

1)#include “stdio.h”

意为包含文件,也是引用的意思。语法就是#include+“”+文件名。

如果,你把include 拼错了、没有加#、不是成对的双引号、后面多加了分号。则不能编译通了,因为违反了语法规则。

2)main()

意为主函数,是程序的最先的入口。函数后面必须有一对小括号。前面的int是这主函数的返回值,用来告诉操作系统程序结束时的运行状态

3) {…}是函数体边界符合,在此之内都属于这个函数。

4、函数的调用

编程序最常用的方法就是函数调用,函数调用就是避免重复编写编码,用现有的编码。在编码过程中,不但要调系统函数,而且要调用他人的函数,更多的是要调用自己的函数。本程序有一个函数调用:

printf("Hello, world.\n");

函数调用要记住:函数名+参数+; 这三个部分,缺一不可。在很多情况下,我们往往会注重前两者,忘记“;”结果导致编译出错。如果作为初学者,一定要注意这个问题。

5、.h的引用

.h文件就是头文件,往往是一个定义文件,定义一些常量、结构、外部数据,有些定义是有条件的。一般情况下,一个C语言至少要引用3个以上的系统文件。意为包含文件,也是引用的意思。从直白上来说,它将一部分源程序放到了外部了。这样自己的源程序看起来更加简洁。对于初学者来说,#include 一般都包含一些系统的*.h 例如 stdio.h 可读作“标准io”。对以高手来说#include会包含一些自己的.h

6、关键字

程序虽然只有9行,但是include,main都是关键字。所谓关键字就是系统启用的名字。如果我们定义函数或变量,不能和关键字相同。比如,你就不能自己起一个名为main的函数。后面我们将会遇到更多的关键字,例如:if、else、while int char等等。

7、转义符

程序中printf("Hello,world.\n");的语句中\n是转义符。\n是换行的意思。n 可以记为new line.这样就好记一些。在C语言中,一些不可显示的控制字符,是通过转意符加符号表示的。与\n一起的还有\r回车符(return)等。另外,一些关键字符\平常化,则要加\,例如\\表示\。

转义符这个在C语言中也是比较重要的概念,也是常用的。

8、返回值

程序中return 0;的作用是,在程序结束时,返回给操作系统一个状态,这个状态用来告诉操作系统程序的执行情况,一般正常情况下返回0.

9、注释

程序中被 /* */ 标记的部分是注释。注释部分不会被编译。可以在注释部分中对程序进行说明。

C语言入门(3)——对Hello World程序的解释的更多相关文章

  1. 【C语言入门教程】3.1 程序的 3 种基本结构

    程序设计是一个问题求解的过程,解决问题的步骤可看作是程序的控制结构.简单地说,程序的运行过程就是数据输入.数据处理.数据输出 3 个步骤.其中,数据处理过程是否快捷和准确,主要依赖于程序控制结构的设计 ...

  2. C语言入门(2)——安装VS2013开发环境并编写第一个C语言程序

    在C语言入门系列中,我们使用Visual studio 2013 Professional作为开发工具.本篇详细介绍如何安装Visualstudio 2013 Professional并写出我们第一个 ...

  3. C语言编程入门之--第一章初识程序

    第一章 初识程序 导读:计算机程序无时不刻的影响着人类的生活,现代社会已经离不开程序,程序的作用如此巨大,那么程序到底是什么呢?本章主要讨论程序的概念,唤起读者对程序的兴趣,同时对C语言程序与其它语言 ...

  4. 我为什么反对推荐新人编程C/C++语言入门?

    虽然我接触编程以及计算机时间比较早,但是正式打算转入程序员这个行当差不多是大学第四年的事情 从03年接触计算机,07年开始接触计算机编程, 期间接触过的技术包括 缓冲区溢出(看高手写的shellcod ...

  5. 《C语言入门1.2.3—一个老鸟的C语言学习心得》—清华大学出版社炮制的又一本劣书及伪书

    <C语言入门1.2.3—一个老鸟的C语言学习心得>—清华大学出版社炮制的又一本劣书及伪书 [薛非评] 区区15页,有80多个错误. 最严重的有: 通篇完全是C++代码,根本不是C语言代码. ...

  6. c语言入门教程 / c语言入门经典书籍

    用C语言开始编写代码初级:C语言入门必备(以下两本书任选一本即可) C语言是作为从事实际编程工作的程序员的一种工具而出现的,本阶段的学习最主要的目的就是尽快掌握如何用c语言编写程序的技能.对c语言的数 ...

  7. 【转】c语言入门教程 / c语言入门经典书籍

    用C语言开始编写代码 初级:C语言入门必备 (以下两本书任选一本即可) C语言是作为从事实际编程工作的程序员的一种工具而出现的,本阶段的学习最主要的目的就是尽快掌握如何用c语言编写程序的技能.对c语言 ...

  8. Swift语言入门之旅

    Swift语言入门之旅  学习一门新的计算机语言,传统来说都是从编写一个在屏幕上打印"Hello world"的程序開始的.那在 Swift,我们使用一句话来实现它: printl ...

  9. 《Ruby语言入门教程v1.0》学习笔记-01

    <Ruby语言入门教程v1.0> 编著:张开川 邮箱:kaichuan_zhang@126.com 想要学习ruby是因为公司的自动化测试使用到了ruby语言,但是公司关于ruby只给了一 ...

随机推荐

  1. js中继承的方法总结(apply,call,prototype)

    一,js中对象继承 js中有三种继承方式 1.js原型(prototype)实现继承 代码如下: <SPAN style="<SPAN style="FONT-SIZE ...

  2. 从头开发MUDLIB

    跟Akuma一起从头打造mudlib--[第一讲] 第一讲:让它跑起来注:每一讲我都会上传一个相符的lib,有些文件是旧的,有些是新的,我尽可能在lib里写清楚注释.更详细的内容则在每讲的正文里写. ...

  3. Mining 任务分类

    1.预测任务: 根据其它属性的值预测特定属性的值. 2.描述性任务: 发现数据之间潜在的关联关系.

  4. inux网卡与MAC地址绑定方法总结

        使用linux系统时会出现这样的情况,当你安装了某个网卡的驱动程序时,或者安装了与网卡相关的程序后. 网卡会出现所谓的漂移现象.(注意:不是飘逸).可能的表象为: (1):网卡顺序颠倒,比如之 ...

  5. android apk 导出(签名) is not translated in xx 代码混淆 反编译

    apk导出遇到问题 解决方式如下 1.导出步骤第一步 2.提示错误 3.解决 其余步骤参见: 代码混淆和数字签名(现在版本混淆) http://blog.csdn.net/moruna/article ...

  6. unigui数据库连接池

    UNIGUI for delphi,是一款WEB RIA开发框架.开发WEB程式如传统C/S般简单,众多DELPHIER趋之若鹜. 虽然上手非常容易,但要真正使用好,有些地方还是值得考究的. 网上有同 ...

  7. EditPlus自动执行出结果设置

  8. ecshop的模板文件中如何判断用户是否登录

    ecshop中对于smarty的运用和改造有很大的值得借鉴的地方,在dwt模板文件中可以直接判断用户是否登录,现在有规定,凡是只展示不销售的电商平台,一律不得展示商品价格,但可以在用户登录后显示. & ...

  9. hdu 5540 Secrete Master Plan(水)

    Problem Description Master Mind KongMing gave Fei Zhang a secrete master plan stashed × matrix, but ...

  10. Fibonacci Tree(最小生成树,最大生成树)

    Fibonacci Tree Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)To ...