//添加对函数的说明(规范)
#include<stdio.h>
/*A simple C progress*/
int main(void)
{
int num; /*Define an variable named num*/
num = 1; /*Assign 1 to the variable*/ printf("I am a simple!"); /*使用printf()函数*/
printf("computer\n");
printf("My favourite number is %d.\n", num);
return 0;
}

(一)#include指示和头文件

实际上,它是一种剪切和粘贴操作,即包括了建立最终的可执行程序时编译器需要用到信息。

(二)main()函数

一个C程序总是从main()函数开始执行,可以对其他函数任意命名,但是main()函数必须是开始函数。int 表明函数main()的返回类型是int,void表明没有传入参数。

(三)注释

/*注释内容(一段)*/
//一行注释内容

(四)、花括号、程序体和代码块

{
代码块;//代码块句子之间必须有";"
}

(五)声明

在C语言中,所有变量都必须在使用之前定义。这意味着必须提供程序中要用到的所有变量名的列表,并且指出每个变量的数据类型。

int main(void)
{
int num;//定义一个
int num_1,num_2; //多个一起定义
}

变量名的选择必须只能是字母、数字和下划线,且第一个字母不能是数字。最后,C语言严格区分大小写。

(六)赋值

{
num = 1; /*Assign 1 to the variable*/
}

(七)printf(实际参数)函数

只需要键入函数的名字,把所需的一个或多个参数放进圆括号中。当程序运行到这一行时,控制权将转给该函数。当函数完成了它所要做的工作,控制权将返回给原来的函数(调用函数)。

转义字符 意义 ASCII码值(十进制)
\a 响铃 007
\b 退一格 008
\f 换页(在cmd里是垃圾字符) 012
\n 换行 010
\r 回车 013
\v 垂直制表符 011
\\ 代表一个反斜字符“\” 092
' 代表一个单引号 039
" 代表一个双引号 034
\0 空字符(null) 000
\ddd 一个八进制任意字符 三位八进制
\xhh 一个十六进制任意字符 三位十六进制
\t 水平制表符 009

(八)return语句


二、多个函数

原型函数可以放在main()前面或后面。

#include<stdio.h>
void butler(void);
int main(void)
{
printf("I will summon the butler function.\n");
butler();
printf("Yes.\n");
return 0;
} void butler(void)
/*第一个void说明bulter()不返回值。第二个void,意思是bulter()函数没有参数。
{
printf("I am from the function of butler.\n");
}

三、关键字和保留标识符

关键字:

auto enum restrict
break extern return unsigned
case float short void
char for signed volatile
const goto sizeof while
continue if static _Boot
default inline struct _Complex
do int switch _Imaginary
double long typedef
else registerr union

保留标识符:带下划线字符开始的标识符和标准库函数的名字

以上这些都不能作为变量名。

C语言之概述的更多相关文章

  1. Linux下c语言环境概述

    Linux下C语言环境概述 主要涉及编辑器.编译链接器.调试器.项目管理工具 编辑器 Linux中常用的编辑器有vi和emacs 查看vim配置文件并编辑 编译链接器 在Linux中,最常用的编译器是 ...

  2. 2017.12.23 第二章 统一建模语言UML概述

    第二章 统一建模语言UML概述 (1)为什么要建模 模型是某个事物的抽象,其目的是在构建这个事物之前先来理解它,因为模型忽略了那些非本质的细节,这样有利于更好的理解和表示事物: 在软件系统开发之前首先 ...

  3. C语言的概述--学习c的第二天

    以下是整理的知识点: #include <stdio.h>/* 引入stdio.h文件c的标准函数库 */ int main(void)/* 定义一个函数main(),int定义函数返回的 ...

  4. java语言特性概述

    一.前言 我们都知道java是面向对象的编程,其中四个基本特性:抽象.封装.继承.多态.这四个特性,概括起来可以这么理解,抽象.封装.继承是多态的基础,多态是抽象.封装.继承的表现. 二. JAVA ...

  5. [java学习笔记]java语言基础概述之标识符&关键字&注释&常量和变量

    一.标识符 在程序中自定义的一些名称 由26个英文字母的大小写,数字,_$组成 定义合法标识符的规则: 不能以数字开头 不能使用关键字 java严格区分大小写 注意:在起名字时,为了提高阅读性,必须得 ...

  6. C语言程序设计概述

    1 概论 1972年Dennis Ritchie发明了C语言,而后Dennis Ritchie又使用C语言重写了Unix系统,自那以后C语言逐渐受到了全世界大多数编程爱好者的喜爱,后期的主流操作系统L ...

  7. 重学C语言---01概述

    1.什么是C语言 C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点.计算机语言是从第二次世界大战以后,经历了戏剧性的发展过程.从机器语言到汇编语言和高级语言.C语言是与硬件 ...

  8. Java语言的概述?-什么是Java? (附一张Java工程师的学习路线图)

    什么是Java? Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承.指针等概念,因此Java语言具有功能强大和简单易用两个特征.Java语言作为静态面向 ...

  9. 简单的C语言编译器--概述

      在学习了编译原理的相关知识后,逐渐的掌握一个编译器的结构.作用和实现方法.同时,希望自己在不断的努力下写出一个简单的C语言编译器. 实现步骤 词法分析器:将C语言测试代码分解成一个一个的词法单元: ...

随机推荐

  1. Tomcat常用的过滤器

    前言 之前我很肤浅的以为为了实现某种请求过滤功能(比如图片转换.文件上传.安全认证等),都需要自己去实现javax.servlet.Filter.之后在web.xml中配置即可. 但事实上,Tomca ...

  2. CAN总线学习记录之三:总线中主动错误和被动错误的通俗解释

    首先建议把广泛使用的"主动错误"和"被动错误"概念换成"主动报错"和"被动报错". 1. 主动报错站点 只要检查到错误, ...

  3. ado.net的简单数据库操作(一)

    摘要:接下来的几篇博客将要讲到如何使用ado.net实现简单的数据库操作,包括增删改等内容.首先会介绍基础的数据库操作,然后以一个实例来进行讲解,这个实例会把一个数据表读取到winform上,然后在w ...

  4. [Go] golang无缓冲通道实现工作池控制并发

    展示如何使用无缓冲的通道创建一个goroutine池,控制并发频率1.无缓冲通道保证了两个goroutine之间的数据交换2.当所有的goroutine都忙的时候,能够及时通过通道告知调用者3.无缓冲 ...

  5. 【Mybatis】使用Mybatis-Generator自动生成entity、dao、mapping

    使用过mybatis的应该都有用过Mybatis-Generator,本文主要介绍使用Mybatis-Generator来自动生成entity.dao.mapping文件. Mybatis-Gener ...

  6. JavaScript 的 4 种数组遍历方法: for VS forEach() VS for/in VS for/of

    我们有多种方法来遍历 JavaScript 的数组或者对象,而它们之间的区别非常让人疑惑.Airbnb 编码风格禁止使用 for/in 与 for/of,你知道为什么吗? 这篇文章将详细介绍以下 4 ...

  7. charles抓包出现乱码 SSL Proxying not enabled for this host:enable in Proxy Setting,SSL locations

    1.情景:抓包的域名下 全部是unknown,右侧出现了乱码 2.查看unknown的notes里面:SSL Proxying not enabled for this host:enable in ...

  8. HTML的概念和三大基石以及标准文档结构

    HTML的概念: 概念:  HTML:超文本标记语言 作用:  需要将java在后台根据用户请求处理的请求结果在浏览器中显示给用户.  在浏览器中数据需要使用友好的格式展示给用户.  HTML是告诉浏 ...

  9. arcgis api 3.x for js 入门开发系列十一地图统计图(附源码下载)

    前言 关于本篇功能实现用到的 api 涉及类看不懂的,请参照 esri 官网的 arcgis api 3.x for js:esri 官网 api,里面详细的介绍 arcgis api 3.x 各个类 ...

  10. Centos7 系统下搭建.NET Core2.0+Nginx+Supervisor+Mysql环境

    好记性不如烂笔头! 一.简介 一直以来,微软只对自家平台提供.NET支持,这样等于让这个“理论上”可以跨平台的框架在Linux和macOS上的支持只能由第三方项目提供(比如Mono .NET).直到微 ...