当前位置: 首页 > news >正文

抽象轻松的C语言

#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,具有换行的作用

http://www.lryc.cn/news/151919.html

相关文章:

  • 【力扣每日一题01】两数之和
  • 机器学习——手写数字识别
  • 【日积月累】后端刷题日志
  • Matlab在编码中增加CRC和交织功能
  • Css 设置从上到下的渐变色: 0到70%为yellow,然后线性地变成透明。
  • git在windows上安装
  • 快速上手GIT命令,现学也能登堂入室
  • 二进制安全虚拟机Protostar靶场 安装,基础知识讲解,破解STACK ZERO
  • python实现的一些方法,可以直接拿来用的那种
  • 通过HTTP进行并发的数据抓取
  • 《论文阅读21》Equivariant Multi-View Networks
  • 【数据结构】| 并查集及其优化实现
  • 最新ChatGPT程序源码+AI系统+详细图文部署教程/支持GPT4.0/支持Midjourney绘画/Prompt知识库
  • 自动驾驶和辅助驾驶系统的概念性架构(一)
  • 【两周学会FPGA】从0到1学习紫光同创FPGA开发|盘古PGL22G开发板学习之数码管静态显示(四)
  • 【洛谷】P3853 路标设置
  • 探索图像数据中的隐藏信息:语义实体识别和关系抽取的奇妙之旅
  • Gradle问题处理
  • 架构:C4 Model
  • 数据结构学习系列之顺序表的两种修改方式
  • React:props说明
  • Can‘t connect to local MySQL server through socket ‘/tmp/mysql.sock‘
  • C++的单例模式
  • Spring Boot 中 Nacos 配置中心使用实战
  • 学生管理系统VueAjax版本
  • 迭代器模式简介
  • 四方定理c++题解
  • ZDH-权限模块
  • 漏洞修复:在应用程序中发现不必要的 Http 响应头
  • 什么是mkp勒索病毒,中了mkp勒索病毒怎么办?勒索病毒解密数据恢复