博客专栏  >  编程语言   >  C/C++沉思录

C/C++沉思录

C/C++技术总结

关注
3 已关注
35篇博文
  • 【C++】C++11知识点串讲

    1、long long类型C++11引入了long long类型,标准规定long long类型的长度至少是long类型的长度,即64bits,同其它类型一样,标准规定了各类型的最小长度,而编译器允许...

    2017-12-30 15:51
    491
  • 【C++】std::vector源码浅析

    std::vector是stl标准模板库中的一个序列容器,其源码实现有几个特点:(1)C++中include的标准头文件是没有“.h”后缀的,其实这是C++的一层包裹,内部实现还是在“.h”文件中完成...

    2015-12-03 15:30
    2540
  • 【C】glibc中字符串处理的几个函数实现分析

    在C语言中,我们经常会用到字符串处理的几个函数,如strcat、strcmp、strcpy等,那么这些函数是怎么实现的呢?strcat——char* strcat(char *dest, const ...

    2015-11-26 17:11
    724
  • 【C】libc中的hook机制

    libc中的hook机制,主要用于内存分配,它就像无处不在的钩子一样,一旦设置好了 hook,我们就可以在内存分配的地方随心所欲地做我们想做的事情。 在malloc.h中,声明了一些hook,原型如...

    2015-11-20 20:29
    1777
  • 【C】使用backtrace获取堆栈信息

    1、backtrace一些内存检测工具如Valgrind,调试工具如GDB,可以查看程序运行时函数调用的堆栈信息,有时候在分析程序时要获得堆栈信息,借助于backtrace是很有帮助的,其原型如下: ...

    2015-11-10 18:21
    4138
  • 【C++】C++内存管理

    写一个好的C++程序,我们要懂得好多东西,比如说最基本的面向对象编程思想,C++的封装、继承、多态机制,设计模式等,还有一个很重要的内容便是性能优化,像C/C++这种接近底层的语言,追求的就是性能,与...

    2015-10-26 15:32
    573
  • 【C++】C++浅拷贝、深拷贝及引用计数浅析

    在C++开发中,经常遇到的一个问题就是与指针相关的内存管理问题,稍有不慎,就会造成内存泄露、内存破坏等严重的问题。不像Java一样,没有指针这个概念,所以也就不必担心与指针相关的一系列问题,但C++不...

    2015-10-22 14:00
    1259
  • 【C】C11标准新特性

    C11标准是C语言标准的第三版(2011年由ISO/IEC发布),前一个标准版本是C99标准。相比C99,C11有哪些变化呢—— 1、 对齐处理 alignof(T)返回T的对齐方式,aligned_...

    2015-05-23 21:39
    5503
  • 【C++】C++14

    最新的C++标准为C++14,即ISO/IEC14882:2014,从一开始的C++98到后来的C++03、C++11,以及若干年后的C++17,对广大C++爱好者来说,每一次的版本提升 无疑是一种福...

    2014-11-10 14:50
    970
  • 【C++】深入理解模板

    1、简介模板是一种代码复用方式,其它的代码复用方式还包括继承和组合。当我们使用模板时,参数由编译器来替换,这非常像原来的宏方法,但却更清晰、更容易使用。在C++中,模板实现了参数化类型的概念,放在一对...

    2017-12-12 12:25
    296
  • 【C++】 运算符重载

    1、一元运算符运算符重载是C++的一大特色,以函数重载的形式出现,函数名为关键字operator后跟着一个运算符,这些函数可以作为类的成员函数实现,也可以作为类的友元函数以全局函数的形式实现,而有的操...

    2017-12-08 13:33
    200
  • 【C++】深入理解C++的常见关键字

    1、autovoid foo() { auto int f = 0; } void foo() { int f = 0; }auto变量即自动变量或局部变量,位于一个进程的地址空间的堆栈段,它们是局限...

    2017-12-07 17:46
    372
  • 【C++】C++中的C

    C++兼容C,但同样的东西,在C++和C中的表现可能不同,下面总结了一些。1、函数空参int f();函数空参时,C表示任意参数,C++表示没有参数。int f(void);C表示没有参数时使用voi...

    2017-12-07 17:49
    397
  • 【C++】链接器及undefined reference的秘密

    1、链接器当C或C++要对函数和变量进行外部引用时,根据引用情况,链接器会选择不同的处理方法。如果还未遇到过这个函数或变量的定义,链接器会把它的标识符加到未解析的引用列表中,即undefined re...

    2017-12-06 12:36
    299
  • 【C】《C专家编程》核心知识点总结

    1、穿越时空的迷雾编译器设计者的金科玉律:效率几乎就是一切,这包括两个方面,编译效率和运行效率,而后者起决定性作用。有很多编译优化措施会延长编译时间,但却能缩短运行时间;还有一些优化措施如清除误用代码...

    2017-12-05 17:37
    521
  • 【C++】cpplint

    1、简介cpplint或cpplint.py是Google开发的一款代码静态检查工具,Python实现,用以检查C++代码是否遵循Google代码规范,还可以发现语法错误。2、示例test.cpp示例...

    2017-09-21 13:48
    743
  • 【C++】cppcheck

    1、简介cppcheck是一款用于C/C++的代码静态检查工具,与编译器和其它的分析工具不同,cppcheck不检查代码中的语法错误,主要目的是检查编译器在正常情况下发现不了的错误,即代码中真正的错误...

    2017-09-21 13:49
    686
  • 【C】C语言中的errno(错误报告)用法

    C语言标准库中的错误报告用法有三种形式。 1、errno errno在头文件中定义,如下 #ifndef errno extern int errno; #endif 外部变量errno保存库程序中实...

    2015-04-23 08:34
    4440
  • 【C】C语言标准库函数总结

    1、存储分配 2、随机数生成 3、数字转换 4、环境通信 5、搜索与排序 6、整型算术 7、多字节、宽字符和字符串转换 8、时间与日期 9、区域设置 10、其它 1、存储分配 void* ma...

    2015-05-14 09:15
    2489
  • 【C】C语言数据流及输入输出函数

    数据流有两种通用类型,文本流与二进制流,文本流由分成行的字符序列组成,二进制流是char类型的数据值序列。基于数据流的概念,C语言有丰富而有用途的输入输出函数,这些函数多在stdio.h、wchar....

    2015-05-08 09:08
    2169

img博客搬家
img撰写博客
img发布 Chat
img专家申请
img意见反馈
img返回顶部