您正在查看: C/C++ 分类下的文章
linux内核list.h之链表list
1、数据结构struct list_head
{
struct list_head *next, *prev;
};
这里用一个list_head类型的结构体,它包含两个指向本身的指针prev和next,从而具备了双向链表的功能。与一般双向链表不同的是,该结构没有数据域。而它一般也是作为我们实际运用的双向链表中一个数据成员。例如:struct my_struct
{
stru...阅读全文
8大经典排序算法-插入排序-直接插入排序(3)
插入类排序插入排序(Insertion Sort)的基本思想是:每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子文件中的适当位置,直到全部记录插入完成为止。插入排序一般意义上有两种:直接插入排序和希尔排序,下面分别介绍。直接插入排序基本思想:最基本的操作是将第i个记录插入到前面i-1个以排好序列的记录中。具体过程是:将第i个记录的关键字K依次与其前面的i-1个已经拍好序列的记录...阅读全文
8大经典排序算法-交换排序-快速排序(2)
基本思想:快速排序是对冒泡排序的一种改进。由C. A. R. Hoare在1962年提出。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。实现:设要排序的数组是A[N],首先任意选取一个数据(通常选用第一个数据)作为关键数据,...阅读全文
8大经典排序算法-交换排序-冒泡(1)
算法一直是编程的基础,而排序算法是学习算法的开始,排序也是数据处理的重要内容。所谓排序是指将一个无序列整理成按非递减顺序排列的有序序列。排列的方法有很多,根据待排序序列的规模以及对数据的处理的要求,可以采用不同的排序方法。那么就整理下网上搜索的资料,按自己的理解,把C语言的8大排序算法列出来。普通意义上,排序算法可以分为三大类:1 交换类排序法2 插入类排序法3 选择类排序法一.交换类排序法...阅读全文
inline、__inline、__inline__、__forceinline、__attribute__((always_inline))编译器依赖
1、inline is the keyword, in C++ and C99.2、__inline is a vendor-specific(厂商特定) keyword (e.g. MSVC) for inline function in C, since C89 doesn't have it.3、__inline__ is similar to __inline but is from...阅读全文
gcc优化中的likely和unlikely
#ifdef __GNUC__
#define likely(x) __builtin_expect(!!(x), 1)
#define unlikely(x) __builtin_expect(!!(x), 0)
#else
#define likely(x) (x)
#define unlikely(x) (x)
#...阅读全文
C与C++的10个主要不同点
如上图那样,C++,英文为c plus plus,它是C的超级,C++支持运行大部分C代码,而反过来C却不可以;这里例举了它们之间的主要10个不同点(为了不偏离原本的语意,直接上英文了):1、C follows the procedural programming paradigm while C++ is a multi-paradigm(多范式) language(procedural ...阅读全文
C/C++获取进程常驻内存大小(get the process resident set size )
1、进程内存接口函数2、接口封装实现#if defined(_WIN32)
#include <windows.h>
#include <psapi.h>
#elif defined(__unix__) || defined(__unix) || defined(unix) || (defined(__APPLE__) && defined(__MA...阅读全文
C/C++获取系统物理内存大小
1、各平台调用接口2、接口实现
#if defined(_WIN32)
#include <Windows.h>
#elif defined(__unix__) || defined(__unix) || defined(unix) || (defined(__APPLE__) && defined(__MACH__))
#include <unistd....阅读全文