[数据结构]()
C 结构体、C 共用体、C 数组、C 指针、、、、、

存储类、auto、register、static、extern

C 函数、定义函数、返回类型、函数名称、参数、函数主体、返回语句、函数声明、调用函数、控制权、函数参数、可变参数(...)、传值调用、引用调用、

--------------------------------------------------
Functions、The type of functions、Declaring functions、The return statement、Arguments to functions、Function prototypes、Argument Conversions、Function definitions、Compound statements and declarations、
函数、声明函数、函数返回值、
--------------------------------------------------
对象是命名的存储区域; 左值是指向对象的表达式
通过赋予变量类型和名称来声明变量(例如 int k;)
通过给它一个类型和名称(例如int * ptr)来声明指针变量,其中星号告诉编译器名为ptr的变量是一个指针变量,该类型告诉编译器指针指向的类型(整数)在这种情况下)。
声明变量后,我们可以通过在其名称前面加上一元&运算符来获取其地址,如&k。
我们可以通过使用* ptr中的一元'*'运算符来“取消引用”指针,即引用它指向的指针的值。
变量的“左值”是其地址的值,即它存储在存储器中的位置。变量的“rvalue”是存储在该变量中的值(在该地址处)。

预处理器指令、函数、变量、语句 & 表达式、注释

# include <stdio.h>
int main()
{
/*这里是注释*/
printf("心飞教程 \n");
}

编译 & 执行 C 程序、C 的令牌(Tokens)
C 数据类型、基本类型、枚举类型、void 类型、派生类型
派生类型:`指针类型`、`数组类型`、`结构类型`、`共用体类型`、`函数类型`
算术类型:包括两种类型:`整数类型`和`浮点类型`

整数类型:`char `、`unsigned char`、`signed char`、`int`、`unsigned int`、`short `、`unsigned short`、`long `、`unsigned long`
浮点类型:`float `、`double `、`long `、`long double`

C 中的`变量定义`、C 中的`变量声明`、C 中的`左值(Lvalues)`和`右值(Rvalues)`
C 常量、字面量、整数常量、浮点常量、字符常量、字符串常量、
定义常量:`#define 预处理器`、`const 关键字`

C 存储类、`auto 存储类`、`register 存储类`、`static 存储类`、`extern 存储类`

C 运算符、算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符、杂项运算符
杂项运算符:`sizeof() 变了大小`、`& 变量地址`、`* 指向一个变量`、`? : 条件表达式`

C 函数、定义函数、函数声明、调用函数、函数参数、参数调用、引用调用

C 数组、`type arrayName [ arraySize ];`、`double username[10];`、

C enum(枚举)、`enum 枚举名 {枚举元素1,枚举元素2,……};`、

C 指针、`指针是一个变量,其值为另一个变量的地址,即,内存位置的直接地址` 、`type *var-name;`、 `int *ip; /*一个整型的指针*/`

C 中的 NULL 指针、函数指针、

回调函数、

回调函数
函数指针作为某个函数的参数、
函数指针变量可以作为某个函数的参数来使用的,回调函数就是一个通过函数指针调用的函数、
简单讲:回调函数是由别人的函数执行时调用你实现的函数

C 字符串、C 结构体、`struct 语句`、C 共用体、`union 语句`、C 位域、
C typedef、C 输入 & 输出、stdin、stdout、stderror
getchar() & putchar() 函数、gets() & puts() 函数、scanf() 和 printf() 函数、

C 文件读写、C 预处理器、C 头文件、C 强制类型转换
、整数提升、C 错误处理、C 递归、C 可变参数、C 内存管理、C 命令行参数、

#

[C 结构体]()

结构是 C 编程用户自定义的数据类型,
允许存储不同类型的数据项、结构用于表示一条记录

[C 共用体]()

共用体是一种特殊的数据类型,允许您在相同的内存位置存储不同的数据类型。
您可以定义一个带有多成员的共用体,但是任何时候只能有一个成员带有值。
共用体提供了一种使用相同的内存位置的有效方式。

[返回值]()

函数可以返回C支持的任何类型(数组和函数除外),包括指针、结构和联合。
对于无法从函数返回的类型,通常可以通过使用指针来回避限制。

函数可以递归调用。
函数可以返回您可以声明的任何类型,除了数组和函数(您可以通过使用指针在某种程度上绕过该限制)。 返回无值的函数应返回void。
始终使用函数原型。
如果在程序中的任何位置调用或定义函数,则会导致未定义的行为,除非原型始终在每个调用或定义的范围内,或者您非常非常小心。
假设您正在使用原型,函数调用的参数值将转换为形式参数的类型,就像使用=运算符分配它们一样。
不带参数的函数应该有一个带有(void)作为参数规范的原型。
采用可变数量参数的函数必须至少使用一个命名参数; 变量参数由...表示,如下所示:
int
vfunc(int x, float y, ...);

[引用传递]()

通过引用传递方式,形参为指向实参地址的指针,当对形参的指向操作时,就相当于对实参本身进行的操作。
传递指针可以让多个函数访问指针所引用的对象,而不用把对象声明为全局可访问

C知识要点-个人总结的更多相关文章

  1. CentOs7下systemd管理知识要点

    centOs7的一个巨大的变动就是用systemd取代了原来的System V init.systemd是一个完整的软件包,安装完成后有很多物理文件组成,大致分布为,配置文件位于/etc/system ...

  2. [CISCO] 转载:冲突域与广播域(区别、知识要点)

    [CISCO] 转载:冲突域与广播域(区别.知识要点) 1.传统以太网操作(Ethernet Connection Ethernet) 传统共享式以太网的典型代表是总线型以太网.在这种类型的以太网中, ...

  3. SDR软件无线电知识要点(三)EVM

    SDR软件无线电知识要点(三)EVM 信号质量如何评估 Noise Figure (NF) or sensitivity and Error Vector Magnitude (EVM) provid ...

  4. SDR软件无线电知识要点(一)噪声系数与噪声因子

    SDR软件无线电知识要点(一)噪声系数与噪声因子 信号质量如何评估 Noise Figure (NF) or sensitivity and Error Vector Magnitude (EVM) ...

  5. RIP 知识要点

    RIP知识要点: UDP:520 版本:v1(广播包更新) / v2(组播更新 224.0.0.9  ) 度量值:跳数(最多跳15跳,路由为16跳时路由不可达) =================== ...

  6. javascript必须知道的知识要点(二)

    该文章不详细叙述各知识要点的具体内容,仅把要点列出来,供大家学习的时候参照,或者检测自己是否熟练掌握了javascript,清楚各个部分的内容. 内建对象可划分为数据封装类对象.工具类对象.错误类对象 ...

  7. javascript必须知道的知识要点(一)

    该文章不详细叙述各知识要点的具体内容,仅把要点列出来,供大家学习的时候参照,或者检测自己是否熟练掌握了javascript,清楚各个部分的内容. 语句 注释 输出 字面量 变量 数据类型 typeof ...

  8. Golang 接口与反射知识要点

    目录 Golang 接口与反射知识要点 1. 接口类型变量 2. 类型断言 3. 鸭子类型 4. 反射机制 5. reflect 包 TypeOf().ValueOf() Type().Kind() ...

  9. 总结了零基础学习Java编程语言的几个基础知识要点

    很多Java编程初学者在刚接触Java语言程序的时候,不知道该学习掌握哪些必要的基础知识.本文总结了零基础学习Java编程语言的几个基础知识要点. 1先了解什么是Java的四个方面   初学者先弄清这 ...

  10. Python原来这么好学-1.3节: 知识要点总结与内容复习

      这是一本教同学们彻底学通Python的高质量学习教程,认真地学习每一章节的内容,每天只需学好一节,帮助你成为一名卓越的Python程序员: 本教程面向的是零编程基础的同学,非科班人士,以及有一定编 ...

随机推荐

  1. Android View部分消失效果实现

    本文来自网易云社区 作者:孙有军 老需求 我们经常会有需求就是View消失的效果,这里我们说的消失往往是全部消失,我们可能采用一个alpha动画,在指定的时间内消失掉View,出现则实现相反的动画.我 ...

  2. Linux的防火墙iptables配置示例

    注:内容来自网络 一.关闭防火墙 1.重启后永久性生效: 开启:chkconfig iptables on 关闭:chkconfig iptables off 2.即时生效,重启后失效: 开启:ser ...

  3. 33 个 2017 年必须了解的 iOS/swift 开源库第三方库

    本文翻译自Medium,原作者为 Paweł Białecki&lt;img src="https://pic3.zhimg.com/v2-c786777447261347b0d97 ...

  4. P1592 互质

    题意:输入两个正整数n和k,求与n互质的第k个正整数. $n≤10^6,k≤10^8$ 可以枚举出互质的数,居然发现,有循环节.... 比如10 与其互质的1  3  7  9  11  13  17 ...

  5. HDU6298 Maximum Multiple (多校第一场1001)

    Maximum Multiple Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  6. kuangbin专题十二 POJ1661 Help Jimmy (dp)

    Help Jimmy Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 14214   Accepted: 4729 Descr ...

  7. centos7上面关闭防火墙

    CentOS 7.0默认使用的是firewall作为防火墙:若没有启用iptables 作为防火墙,则使用以下方式关闭防火墙: systemctl stop firewalld.service 关闭开 ...

  8. 使用RestTemplate时报错java.lang.IllegalStateException: No instances available for 127.0.0.1

    我在RestTemplate的配置类里使用了 @LoadBalanced@Componentpublic class RestTemplateConfig { @Bean @LoadBalanced ...

  9. 复习一知识点:回调函数callback

    比如我们常用的异步请求: $.ajax({ url:"test.json", type: "GET", data: {username:$("#use ...

  10. 树莓派编译安装 FFmpeg(添加 H.264 硬件编解码器支持)

    说明 FFmpeg 是一套开源的音视频编解码库,有非常强大的功能,包括视频采集功能.视频格式转换等.众所周知视频编解码是一个非常消耗系统资源的过程,而树莓派自带了 H.264 的硬件编解码器,因此本文 ...