抽象轻松的C语言

cpp 复制代码
#include <stdio.h> /* 预处理指令*/
/* 函数 */
int main()
{
    int log = 3.14;
    printf("hello word * %d\n easy", log);
    getchar();/* 获取键盘输入的字母,在这个程序中的作用是防止程序瞬间关闭 */
    return 0;
}

上一篇说过,C程序是C语言的标准化,模板化的一个发展,也就保留了c语言的核心要素和语句

C程序的两大核心------预处理指令与函数

C语言中的四要素、六语句

四要素:关键字,运算符,标识符,数据

六语句:标识语句,复合语句,表达式语句,选择语句,迭代语句,跳转语句

标准化了这四要素和六语句的语法

例如四要素,上面的例子占了4个,第一个关键字:main,printf,getchar

运算符:= % \

标识符:log

数据:3.14

这四要素标准化后可以分为可控制和不可控制两类型

标识符、数据与运算符、关键字

红字已经被标准化了,这些都有固定的值,改变不了(如果你想改变可以,成为标准化的规划人)

标识符是指变量名,函数名,他们有一套独特的标准,由字母,数字,下划线_组成

不能用数字作为开头,不能用数字作为开头,不能用数字作为开头

如果用数字作为开头就会产生bug,报错,因为编译器看不懂你所表达的意思,产生了信息空白

将上面的程序分成一块一块来看

#include <stdio.h> 预处理指令,准备任务,为函数的使用做准备,这指令包含了输出和输入

有人会问,为什么不像别的语言一样输入和输出直接放入编译器中,而是用预处理指令,这就是c语言的哲学了,简称C哲学,有时候是不需要输入输出的,换条指令,就可以减少c语言的内存占比,提升性能,这也是C语言的一大特性,这一特性为C在嵌入式领域中大放光彩奠定了一部分基础

函数:可重复使用的一块代码区域,由函数名+()+语句组成

main(),printf(),getchar()

main()------主函数,在标准化中,会优先运行该函数

printf()------输出函数,可以将括号内的信息输出

getchar()------输入函数,获取键盘的输入的第一个字母(字符串)

语句呢?只有main()有语句,为什么剩下的两个看不见语句?语句都在预处理指令中,预处理指令就相当于一个超级的库,库里面的内容就是一堆函数,怎么用库,怎么用函数,例如你用一个没有输出输入的库,那上面的输出输入就会报错。类似于一种方言,一种C语言的独特方言,库对应地区,方言对应地区的语言,但是还是以C为主的方言

语句:是由四要素组成的

int log = 3.14;

有标识符,运算符,关键字和数据

return 是返回一个值,这个值就是函数的结果,例如输出语句,printf()在库里面有return 输出内容这一类代码

每一个函数都相当于一个有出口的迷宫,这个出口就是return

特殊的关键字

%d,这个意思是,以何种类型的信息

\n,具有换行的作用

相关推荐
1024奇点40 分钟前
【仓颉语言入门 · 第二篇 第 22 课】
开发语言·ide·开源
Warren2Lynch1 小时前
C4 模型详解:利用 Visual Paradigm 可视化软件架构的综合指南
开发语言·uml
Knight_AL2 小时前
Java 文件下载时文件名中的 `#` 被转换成 `%23`?一次 URL 编码与解码问题排查
java·开发语言
FRing033 小时前
vue2干货总结2(v-bind、v-for、v-model、指令修饰符、v-bind操作class和style)
开发语言·前端·vue.js·vue2
蹊黎3 小时前
Linux 下用 C 语言实现进度条
linux·c语言·单片机
by209993 小时前
C++ 智能指针的所有权与使用
开发语言·c++·经验分享
砚底藏山河3 小时前
python量化自定义周期 K 线合成
java·开发语言·数据库·python·金融
IT召唤狮4 小时前
开源企业级零信任项目Pangolin,零信任能挡住PHP核弹漏洞吗?
开发语言·开源·php
知已难寻4 小时前
03 · OpenStack的计算管理 Nova
运维·服务器·开发语言·云原生·云计算·openstack·开源软件
Rover Ramble4 小时前
C++ 用互斥锁实现读写锁
开发语言·c++