小朋友学C语言(1):Hello World

首先,需要一款C语言的编译器,可以使用在线编译器,也可以在本地安装编译器,比如Mac电脑可以安装Xcode,PC可以安装Dev C++。 若是第一次编写程序,建议使用在线编译器,推荐 菜鸟编译器

编写第一个程序:Hello World!

#include <stdio.h>
int main()
{
   /* 我的第一个 C 程序 */
   printf("Hello, World! \n");
   return 0;
}

运行结果:

Hello, World!

程序分析: (1) 这里stdio.h是一个头文件。代表stantard input & output。C语言的程序文件分为头文件(.h)和源文件(.c),这两都的具体概念以后再讲解。 stdio.h中声明了一些方法,比如printf函数就是在stdio.h中声明的。

#include <stdio.h>

就是把stdio.h文件包含进来,否则程序会不认得printf函数。

(2) 在C语言中,形如int main() {...}的表示定义一个函数。 main是函数名称,int代表整形,int在main的前面表示这个函数必然返回一个整数。咱们这个函数最终返回的就是整数0。 大括号之间,是函数体。本例中的函数体内容的作用是打印出Hello World并返回0。程序语言中的打印指的是在控制台里输出结果,而不是像打印机那样把纸打印出来。

(3)

/* 我的第一个 C 程序 */

C语言中,被包含在斜杠和星号中的内容是注释内容。注释内容是写给人类看的,不会被编译或运行。 C语言中,有两种注释方式。一种是斜杠和星号,另一种是// 两者的区别为: 斜杠和星号既可以注释一行(见上面的程序),也可以注释多行,例如:

/* 我的第一个C程序
   尝试打印Hello World! */

//则只能注释一行。若有多行要用//注释,则需要多个//。例如:

// 我的第一个C程序
// 尝试打印Hello World! 

(4) printf()带了一对小括号,表明它也是一个函数。没带大括号,也没有返回类型,因为这是函数调用。main函数调用了printf函数。 printf()函数的声明在stdio.h中,printf()函数的定义在stdio.c中。要调用函数时,只须把该函数所在的头文件包含进来就行,不用包含源文件。 printf()的作用是把()中的内容在控制台打印出来。

(5) \n是个转义字符。什么叫转义呢?比如n本来是表示一个字符,加上斜杆后,不再表示字符n,而是表示换行。意义已经转变了,所以叫转义字符。

(6) return 0;是main()函数的返回值,main()函数是特殊的函数,只调用别人,不会被别人调用。所以返回多少无关紧要,比如还可以return 1; 或return 100;

总结: 第一次接触程序,上面有些东西,估计不会一下子全明白过来。但是不要紧,只要能明白一半就行。本节课主要是看一下程序长什么模样,运行结果长什么模样。有不明白的地方,以后会陆陆续续介绍。

原文发布于微信公众号 - 海天一树(gh_de7b45c40e8b)

原文发表时间:2017-10-19

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏nimomeng的自我进阶

《Objective-C基础教程》笔记

1.xcode中,oc的.m文件代表message,指的是Objective-C的一个主要特性。 2.NS前缀的来历要追溯到次公局包还被成为NextStep,...

832
来自专栏前端杂货铺

前端开发中的字符编码

前端开发过程中会接触各种各样的编码,比较常见的主要是UTF-8和HTML实体编码,但是web前端的世界却不止这两种编码,而且编码的选择也会造成一定的问题,如前后...

3508
来自专栏用户2442861的专栏

STL源码剖析-hash_set / hash_multiset

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/haluoluo211/article/d...

931
来自专栏Jimoer

在Java的反射中,Class.forName和ClassLoader的区别

最近在面试过程中有被问到,在Java反射中Class.forName()加载类和使用ClassLoader加载类的区别。当时没有想出来后来自己研究了一下就写下来...

1572
来自专栏Java Web

《编写高质量代码》学习笔记(2)

写着写着发现简书提醒我文章接近字数极限,建议我换一篇写了。 ---- 建议52:推荐使用String直接量赋值 一般对象都是通过new关键字生成的,但是Str...

3684
来自专栏禅林阆苑

LESS 学习demo 【原创】

LESS 学习demo Write By CS逍遥剑仙 我的主页: www.csxiaoyao.com GitHub: github.com/...

4029
来自专栏CRPER折腾记

Typescript 2+迷你书 :从入门到不放弃

众所周知:JS中有这么几种类型的数据: Symbol,boolean,Number,Object[Array在js中也属于对象],undefind,null,S...

1671
来自专栏Golang语言社区

实效go编程--1

实效Go编程 版本:2013年12月22日 引言 示例 格式化 注释 命名 包名 获取器 接口名 驼峰记法 分号 控制结构 If 重新声明与再次赋值 For S...

3699
来自专栏Coco的专栏

高性能Javascript--高效的数据访问

1042
来自专栏大闲人柴毛毛

Java8新特性——StreamAPI(一)

1. 流的基本概念 1.1 什么是流? 流是Java8引入的全新概念,它用来处理集合中的数据,暂且可以把它理解为一种高级集合。 众所周知,集合操作非常麻烦,若...

3639

扫码关注云+社区

领取腾讯云代金券