C/C++
闲云阁
闲云野鹤 -> 算法仿如酒心糖,嚼着嚼着就醉了
展开
-
C语言 文件的输入输出
文件的输入输出函数分为两大类1.有缓冲区的输入输出(Buffered I/O) 数据先写到缓冲区,满了再写入文件2.无缓冲区的输入输出(Unbuffered file I/O) 直接操作文件有缓冲区的输入输出函数,含于stdio.hfopen() 打开一个文件fclose() 关闭一个文件putc() 输出一个字符到文件,宏定义getc() 从文件读取一个字原创 2014-02-07 12:00:04 · 4040 阅读 · 0 评论 -
闲云控制台(一)控制台命令解析框架
发布闲云控制台连载系列,会不定期加入新功能~先发一个命令解析的框架/*********************************************************************闲云万能控制台*************************************** 作者: 闲云野鹤********* QQ: 836663997原创 2014-08-22 23:01:22 · 1319 阅读 · 0 评论 -
闲云控制台(二)查看文件功能,支持十六进制查看文件
命令处理区加入int Look_File(pCommand b){ int _out_style = 1; int _line_number = 1; int _len_argu = strlen(b->Cmd_Arguments); while (--_len_argu >= 0) { switch (b->Cmd_Arguments[_len_argu]) { ca原创 2014-08-23 17:28:15 · 834 阅读 · 0 评论 -
功能超级丰富的彩色贪吃蛇,有道具,有等级!
彩色的贪吃蛇实现,功能强大,有等级模块,道具功能,后面有效果预览,先上代码:console.h#include //颜色定义#define FWHITE FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE //白色前景#define FRED FOREGROUND_INTENSIT原创 2014-09-18 11:34:14 · 1759 阅读 · 0 评论 -
c++11
变量的大括号赋值(初始化器)、类型转换(不允许缩窄)char c1{221};char c2 = {221};char c4 = {c1};auto 声明 自动判断变量类型 用于STL 效果强大auto n = 100; //intauto x = 1.4; //doubleauto y = 1.2e12L; //long double原创 2014-02-12 23:02:53 · 796 阅读 · 0 评论 -
RTTI 运行阶段类型识别
RTTI是运行阶段类型识别C++有3个支持RTTI的元素dynamic_cast 如可能,使用一个指向基类的指针生成派生类指针,否则返回空指针typeid 返回一个指出对象类型的值type_info 结构存储了有关特定类型的信息* 只能将RTTI用于包含虚函数的类层次结构dynamic_cast(pg); //pg是否能够安全的转换为Su原创 2014-02-07 12:30:12 · 601 阅读 · 0 评论 -
string类
string::npos 指定了string 对象最大允许长度,通常是最大的unsigned int值构造函数string(const char * s)初始化为s指向的NBTS (以空字符结束的传统的C 字符串)string(size_type n, char c)创建包含n个元素的string对象,每个元素都初始化为cstring(const string & str)原创 2014-02-07 12:20:13 · 525 阅读 · 0 评论 -
类
类中默认访问类型是 private 结构默认访问类型是public定义位于类声明中的函数都将自动成为内联函数,在类声明之外定义时若使其成为内联函数,需加 inline限定符在类中创建常量用作数组长度等用途直接声明行不通,因为类只描述对象的形式,并没有创建对象,因此创建对象前,没有用于存储的空间。解决方法是1.声明一个枚举,作用域为整个类class Bakery原创 2014-02-07 12:18:06 · 670 阅读 · 0 评论 -
类型转换运算符
4种类型转换运算符dynamic_castconst_caststatic_castreinterpret_castdynamic_cast (expression) 类层次结构中进行向上(基类)转换,否则返回空指针const_cast (expression) 只用于改变值为const 或volatile 不改变类型(可用于值大多数时候为con原创 2014-02-07 12:16:06 · 631 阅读 · 0 评论 -
内存模型
内存模型1.自动变量 在代码块中声明2.寄存器变量 在代码块中,使用关键字register3.静态持续性、外部连接性 函数外4.静态持续性、内部连接性 函数外,加static5.静态存储持续性、无连接性代码块内部6.动态分配 由new、和delete 结合使用通常编译器使用三块独立内存,分别用于: 静态变量(可能再细分)、自动变量、动态存储原创 2014-02-07 12:12:00 · 559 阅读 · 0 评论 -
异常
exception 类头文件:exception | exception.h | except.hwhat() 成员返回字符串stdexcept 异常类(头文件stdexcept)该文件定义了 logic_error 和runtime_error 都以公有方式从exception 派生而来logic_error 类系列 描述逻辑错误 含有domain_err原创 2014-02-07 12:07:26 · 738 阅读 · 0 评论 -
智能指针
智能指针 头文件 memory 必须使用new 分配内存,才可使用。(unique_ptr 支持new[])auto_ptr unique_ptr (C++11)shared_ptr (C++11)weak_ptr为避免两个指针指向同一个对象,auto_ptr 和 unique_ptr 建立所有权(ownership)概念,赋值时所有权转让,unique_原创 2014-02-07 12:04:51 · 650 阅读 · 0 评论 -
运算符重载
运算符重载operatorX () //X为重载的运算符operator++() //前自增operator++(int) //后自增运算符重载限制1.必须至少有一个操作数是用户定义的类型,这将防止用户为标准类型重载运算符2.不能违反运算符原来的句法规则,即不能改变操作数数量,不能改变优先级3.不能创建新运算符4.不能重载下面的运算符sizeof 运算符原创 2014-02-07 12:03:22 · 561 阅读 · 0 评论 -
八大排序算法源码 + 耗时长度比较
八大排序算法的排序时间长度的比较,测试数据10000000时部分结果如下输入测试数据长度: 10000000数据初始化中...数据初始化完成! 堆排序用时: 8秒 499毫秒 快速排序用时: 22秒 35毫秒 归并排序用时: 34秒 473毫秒另外五种排序本人并未等待结果,读者可自行测试原创 2014-04-10 16:48:09 · 1739 阅读 · 0 评论