随笔分类 - C/C++
摘要:# C中宏展开问题简单记录一下碰到的问题。```c#define STR(x) #x```我们知道使用上面的宏可以将x转换为字符串"x"。但是如果这样用:```c#define NUM 3#define STR(x) #xSTR(NUM) --> 实际输出为:"NUM".```这是为啥呢?C99标准...
阅读全文
摘要:# C语言中的命名空间命名空间是为了解决 “在相同作用域内如何区分 相同的标识符”。 说明:①只有在相同作用域的情况下才能使用到命名空间去区分标识符,在嵌套的作用域、不同的作用域区分标识符都用不到命名空间的概念。 ②在相同的作用域内,如果命名空间不同,标识符可以使用相同的名称。否则,即如果命名空间不...
阅读全文
摘要:#c语言中赋值语句的结果最近在看《C语言接口与实现》,在第一章就发现一个以前很少用到的用法。在实现strcpy函数时,书中给出了两种实现。```c//version 1, 使用数组实现(新手惯用)char *strcpy(char dst[], const char src[]){ int i...
阅读全文
摘要:# C++ 中的virtual关键词##动态绑定所谓动态绑定,我的理解就是一个函数在调用之前无法得知参数的具体类型(基类还是派生类)。C++ Primer上描述了两种动态绑定的情况:> 要触发动态绑定,必须满足两个条件:一、指定为虚函数的成员函数。二、通过基类类型的引用或指针进行函数调用。##基类和...
阅读全文
摘要:本文简单描述了C中的回调函数的应用,顺便提到函数指针数组的应用.
阅读全文
摘要:简单总结了C语言中的数组特性,包括动态大小数组,0长数组。
阅读全文
摘要:在看《深入剖析Nginx》时看见一个非常少见的C语言知识点:预处理操作符。 #define conn(x,y) x##y //将子串x和y连接形成新的串#define tochar(x) #@x //将x用单引号包裹,形成一个const字符#define tostring(x) #x //将x用双引号包裹,形成一个字符串参考...
阅读全文
摘要:本文从Nginx的下载和安装开始,展开Nginx的学习。千里之行,始于足下。
阅读全文
摘要:axel源码中使用了select函数,本文简单介绍了select函数的用法。
阅读全文
摘要:前面一篇文章的流程太过于简单,基本没有触及到axel的核心,因此本文将要把axel中的几个重要的主要的操作流程单独弄出来看看,还是按照main函数的执行顺序来展开,略去错误处理之类的流程仅仅着眼于最重要的内容。
阅读全文
摘要:由一篇博客的困惑引起的C语言中的强制类型转换问题的分析。
阅读全文
浙公网安备 33010602011771号