GCC

  • C语言条件编译(#if,#ifdef,#ifndef,#endif,#else,#elif)

    条件编译(conditional compiling)命令指定预处理器依据特定的条件来判断保留或删除某段源代码。例如,可以使用条件编译让源代码适用于不同的目标系统,而不需要管理该源…

    编程笔记 2021年7月20日
  • gets和fgets函数及其区别,C语言gets和fgets函数详解

    每当讨论 gets 函数时,大家不由自主地就会想起 1988 年的“互联网蠕虫”,它在 UNIX 操作系统的 finger 后台程序中使用一个 gets 调…

    编程笔记 2021年7月20日
  • C++语言的历史

    C++ 语言是从C语言发展而来的。 C语言有很多优点,也有很多不足。如对类型匹配的检查不够严格、基本没有支持代码重用的机制、不支持面向对象等。这使得在用C语言开发大规模的软件时,维…

    编程笔记 2021年7月20日
  • 清空输入缓冲器,C语言清空输入缓冲区完全攻略

    本节,在学习如何清空输入缓冲区之前,我们先来介绍一下“输入缓冲区”的概念。 输入缓冲区 所有从键盘输入的数据,不管是字符还是数字,都是先存储在内存的缓冲区中…

    编程笔记 2021年7月20日
  • C语言变量定义和赋值

    定义变量的格式非常简单,如下所示: 数据类型  变量名; 首先要强调的一点是:最后的分号千万不要丢了。变量的定义是一个语句,我们说过,语句都是以分号结尾的。 &ldquo…

    编程笔记 2021年7月20日
  • 用C语言构建一个可执行程序的流程

    从用C语言写源代码,然后经过编译器、连接器到最终可执行程序的流程图大致如下图所示。 图:C语言源代码编译流程图 从图中我们可以清晰地看到C语言编译器的大致流程。 首先,我们先用C语…

    编程笔记 2021年7月20日
  • 关于GNU规范的语法扩展

    GNU 是一款能用于构建类 Unix 操作系统的计算机软件合集,由自由软件之父 Richard Stallman 开创,于 1983 年 9 月 27 日对外发布。GNU 完全由自…

    编程笔记 2021年7月20日
  • C89(C90)、C99、C11——C语言的三套标准

    C语言最初由 Dennis Ritchie 于 1969 年到 1973 年在 AT&T 贝尔实验室里开发出来,主要用于重新实现 Unix 操作系统。此时,C语言又被称为 …

    编程笔记 2021年7月20日
  • 线程终止执行的三种方法(Linux)

    多线程程序中,终止线程执行的方式有 3 种,分别是: 线程执行完成后,自行终止; 线程执行过程中遇到了 pthread_exit() 或者 return,也会终止执行; 线程执行过…

    编程笔记 2021年7月20日
  • Linux线程死锁详解

    我们已经学会了 4 种实现线程同步的方法(互斥锁、信号量、条件变量和读写锁),很多初学者在使用这些方法的过程中,经常会发生“线程一直被阻塞”的情况,我们习惯…

    编程笔记 2021年7月20日