Skip to content
C Primer Plus 6th Edition(第六版)
C C++
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Xcode 枚举实质上是整型。 Mar 24, 2019
media
raw_source_code
.gitignore Initial commit. Aug 26, 2017
C Primer Plus第6版中文版勘误表.pdf
C Primer Plus第6版编程练习答案.pdf Add excercise answer Sep 1, 2017
README.md 更新摘要。 Mar 24, 2019

README.md

使用说明

项目使用 Xcode 10.x 构建的, clone 下来即可在 Xcode 中直接运行.

重点内容摘要

ch14 结构体、联合

manybook.c 中:


结构中的字符数组和字符指针:

在结构中,字符数组使用较简单。
而结构中的字符指针要用 malloc 开辟空间,并且使用完后要调用 free 释放空间。示例请看:https://github.com/Huang-Libo/C-Primer-Plus-6e/blob/master/raw_source_code/Ch14/names3.c

联合

联合(union)是一种数据类型,它能在同一个内存空间中储存不同的数据类型(不是同时储存)。

typedef 与 #define 的区别:

  • 与#define不同,typedef创建的符号名只受限于类型,不能用于值。
  • typedef由编译器解释,不是预处理器。
  • 在其受限范围内,typedef比#define更灵活。
typedef char * STRING; //编译器将把STRING识别为一个指向char的指针变量。
STRING name, sign;
// 上面声明相当于:
char * name, * sign;
#define STRING char *
STRING name, sign;
// 上面声明相当于:
char * name, sign; //(这导致只有name才是指针,这很可能不是我们想要的结果)

常用资料

C 运算符优先级

来源:https://zh.cppreference.com/w/c/language/operator_precedence

You can’t perform that action at this time.