《C程序设计语言》笔记 第1章 导言
本章将重点介绍一些基本概念,比如常量与变量、算术运算、控制流、函数、基本输入/输出等。本章是后续各章详细讲解的内容的框架。 1.1 入门 所有语言初学者编写的第一个程序都是打印”hello, world”。在C语言中,可以用下列程序打印出”hello, world”: #include <stdio.h> int main() { printf("hello, wo...
本章将重点介绍一些基本概念,比如常量与变量、算术运算、控制流、函数、基本输入/输出等。本章是后续各章详细讲解的内容的框架。 1.1 入门 所有语言初学者编写的第一个程序都是打印”hello, world”。在C语言中,可以用下列程序打印出”hello, world”: #include <stdio.h> int main() { printf("hello, wo...
图书链接:https://book.douban.com/subject/1139336/ 为什么要写这些笔记 第一次阅读《C程序设计语言》这本书是6年多前。大一之前的暑假,出于对编程的兴趣,买来这本书想自学一下C语言。那时是我第一次接触C语言,当时还完全不懂二进制、内存这些计算机基础知识,也完全没用过Linux命令行,因此不能完全理解书中的一些内容(例如2.9按位运算符、5.10命令行参...
1.编译流程 GCC编译器在编译C代码时需要经过以下4个步骤: 预处理(preprocessing):对.c源文件进行预处理(头文件展开和宏替换),生成.i文件 编译(compilation):对.i文件进行编译,生成.s汇编文件 汇编(assembly):对.s文件进行汇编,生成.o目标文件 链接(linking):将.o文件与库文件进行链接,生成可执行文件 2.gc...
1.简介 Blade是腾讯开发的一个开源构建工具,旨在简化大型项目的构建,能够自动分析依赖,集成了编译、链接、测试、静态代码检查等功能,支持C/C++, Java, Python, Scala, protobuf等多种语言(主要面向C/C++)(借鉴自Bazel)。 注意:构建(build)和编译(compile)不同——编译器负责将源代码转换为库文件或可执行文件;构建工具负责分析构建目标...
定义 组合(composite)模式将对象组合成树形结构以表示“整体-部分”的层次结构 组合模式使得用户能够以一致的方式使用单个对象和组合对象 解决的问题 对于树形的类层次结构,组合模式通过引入一个抽象的组件类作为叶子对象和组合对象(非叶子对象)的父类,使得客户端不需要区分叶子对象和组合对象,而是以一致的方式来操作 组合模式的关键就在于这个抽象类,既可以代表叶子对象又可以代表组合对象 ...
官方文档: https://docs.djangoproject.com/en/stable/topics/settings/ https://docs.djangoproject.com/en/stable/ref/settings/ 1.指定设置文件 Django创建项目时自动创建了一个设置文件<project_name>/settings.py。 执行dja...
分页(pagination)用于将数据划分为多个页,从而可以在查看数据列表时使用“上一页/下一页”链接。 官方文档: https://docs.djangoproject.com/en/stable/topics/pagination/ https://docs.djangoproject.com/en/stable/ref/paginator/ 1.Paginator类 在...
Django向MySQL中插入的字符串包含特殊Unicode字符时报错: django.db.utils.OperationalError: (1366, "Incorrect string value: '\\xF0\\x9D\\x90\\xBF' for column 'abstract' at row 1") 该字符是一个4字节的Unicode字符,而MySQL的utf8编码最多只...
定义 桥接(bridge)模式将抽象部分与它的实现部分分离,使它们可以独立变化 桥接模式将继承关系转化成关联关系,降低了类之间的耦合度,减少了系统中类的数量 解决的问题 当类层次结构的变化有两个维度,一个维度的变化会引起另一个维度进行相应的变化,使得系统扩展起来非常困难 桥接模式将这两个维度分离(将抽象部分与实现部分分离),使其相互独立,从而实现两个部分可以独立变化,使扩展变得简单 ...
定义 适配器(adapter)模式通过一个包装类将一个接口转换成客户端期望的另一个接口(可类比为转接线) 类的适配器模式使用继承,对象的适配器模式使用组合 解决的问题 使原本由于接口不兼容而不能一起工作的类可以一起工作 实现 假设目标接口Target定义了一个request()方法: public interface Target { void request(); } 而...