《C Primer Plus》笔记
《C Primer Plus》读书笔记
itzyjr
Stay hungry,Stay foolish!
展开
-
《C Primer Plus》书目录
《C Primer Plus》这本书的目录。原创 2020-05-08 15:20:42 · 926 阅读 · 0 评论 -
第17章-高级数据表示
研究数据表示:我们先从数据开始。假设要创建一个地址簿程序。应该使用什么数据形式储存信息?由于储存的每一项都包含多种信息,用结构来表示每一项很合适。如何表示多个项?是否用标准的结构数组?还是动态数组?还是一些其他形式?各项是否按字母顺序排列?是否要按照邮政编码(或地区编码)查找各项?需要执行的行为将影响如何储存信息?简而言之,在开始编写代码之前,要在程序设计方面做很多决定。如何表示储存在内存...原创 2019-10-25 06:06:52 · 602 阅读 · 0 评论 -
第16章-C预处理器和C库
C预处理器在程序执行之前查看程序(故称之为预处理器)。根据程序中的预处理器指令,预处理器把符号缩写替换成其表示的内容。预处理器并不知道 C。基本上它的工作是把一些文本转换成另外一些文本。翻译程序的第一步:在预处理之前,编译器必须对该程序进行一些翻译处理。首先,编译器把源代码中出现的字符映射到源字符集。该过程处理多字节字符和三字符序列——字符扩展让C更加国际化。第二,编译器定位每个反斜杠后面...原创 2019-10-24 01:21:43 · 395 阅读 · 0 评论 -
第15章-位操作
在C语言中, 可以单独操控变量中的位。 读者可能好奇, 竟然有人想这样做。 有时必须单独操控位, 而且非常有用。 例如, 通常向硬件设备发送一两个字节来控制这些设备, 其中每个位(bit) 都有特定的含义。 另外, 与文件相关的操作系统信息经常被储存, 通过使用特定位表明特定项。 许多压缩和加密操作都是直接处理单独的位。 高级语言一般不会处理这级别的细节, C 在提供高级语言便利的同时, 还能在为...原创 2019-10-23 02:33:25 · 526 阅读 · 0 评论 -
第14章-结构和其他数据形式
建立结构声明:struct book { char title[MAXTITL]; char author[MAXAUTL]; float value;};把library声明为一个使用book结构布局的结构变量:struct book library;定义结构变量:结构有两层含义。一层含义是“结构布局”,刚才已经讨论过了。结构布局告诉编译器如何表...原创 2019-10-19 20:04:56 · 390 阅读 · 1 评论 -
第13章-文件输入/输出
标准I/O:与底层I/O相比,标准I/O包除了可移植以外还有两个好处。第一,标准I/O有许多专门的函数简化了处理不同I/O的问题。例如,printf()把不同形式的数据转换成与终端相适应的字符串输出。第二,输入和输出都是缓冲的。也就是说,一次转移一大块信息而不是一字节信息(通常至少512字节)。例如,当程序读取文件时,一块数据被拷贝到缓冲区(一块中介存储区域)。这种缓冲极大地提高了数据传输速率...原创 2019-10-13 22:57:35 · 631 阅读 · 0 评论 -
第12章-存储类别、链接和内存管理
一、存储类型:C提供了多种不同的模型或存储类别(Storage Class)在内存中储存数据。 本书目前所有编程示例中使用的数据储存在内存中。内存有两个很基本的属性:内存地址和内存里面放的数据。想象完全一样的箱子。每个箱子有个编号,用来区分到底是哪个箱子,箱子里面可以放东西。内存地址相当于箱子的编号,内存的数据,相当于箱子里面放的东西。从硬件方面来看,被储存的每个值都占用一定...原创 2019-09-26 01:19:24 · 486 阅读 · 0 评论 -
第11章-字符串和字符串函数
#include <stdio.h>#define MSG "I am a symbolic string constant."#define MAXLENGTH 81int main(void) { char words[MAXLENGTH] = "I am a string in an array."; const char* pt1 = "Something is...原创 2019-09-19 06:56:24 · 1074 阅读 · 0 评论 -
第10章-数组和指针
1.原创 2019-09-18 05:19:54 · 606 阅读 · 0 评论 -
第9章-函数
Suppose, for example, that you want to write a program that does the following:■ Read in a list of numbers■ Sort the numbers■ Find their average■ Print a bar graphYou could use this program:...原创 2019-09-13 21:40:39 · 299 阅读 · 0 评论 -
第8章 字符输入/输出和输入验证
/* repeats input */#include <stdio.h>int main(void) { char ch; while ((ch = getchar()) != '#') putchar(ch); return 0;}Hello, there. I would[enter]Hello, there. I woul...原创 2019-09-06 01:42:49 · 697 阅读 · 0 评论 -
第7章-C控制语句:分支和跳转
Introducing getchar() and putchar():A pair of C functions specifically designed for character-oriented I/O—getchar() and putchar().The getchar() function takes no arguments, and it returns the n...原创 2019-09-03 21:26:14 · 174 阅读 · 0 评论 -
第6章-C控制语句:循环
The while Loop:/* sums integers entered interactively */#include <stdio.h>int main(void) { long num; long sum = 0L; /* initialize sum to zero */ int status; printf("Please ...原创 2019-09-03 20:55:34 · 267 阅读 · 0 评论 -
第5章-运算符、表达式和语句
/* converts a shoe size to inches */ #include <stdio.h> #define ADJUST 7.31 // one kind of symbolic constantint main(void) { const double SCALE = 0.333; // another kind of sy...原创 2019-08-23 05:45:32 · 347 阅读 · 0 评论 -
第4章-字符串和格式化输入/输出
The talkback.c Program:// nosy, informative program #include <stdio.h> #include <string.h> // for strlen() prototype#define DENSITY 62.4 // human desity in lbs per cu ftint mai...原创 2019-08-23 01:21:23 · 2164 阅读 · 0 评论 -
第3章-数据和C
The platinum.c Program:#include <stdio.h>int main(void) { float weight; /* user weight */ float value; /* platinum equivalent */ printf("Are you worth your weight in platinum?\n"...原创 2019-08-18 05:53:48 · 321 阅读 · 0 评论 -
第2章-C语言概述
The first.c Program:#include<stdio.h>int main(void) /* a simple program */{ int num; /* define a variable called num */ num = 1; /* ...原创 2019-08-18 01:36:42 · 191 阅读 · 0 评论 -
第1章-初识C语言
1. What does portability mean in the context of programming?A perfectly portable program is one whose source code can, without modification, be compiled to a successful program on a variety of diffe...原创 2019-08-17 21:36:36 · 261 阅读 · 0 评论