
夜深人静C++
c++
MrWang.
嵌入式工程师 Linux驱动以及应用程序的开发
知其然知其所以然,每一个文章都会详细解释并给出示例代码可上机运行
不足之处请大家提出,希望与大家一起进步,共勉!
展开
-
C语言C++堆栈打印方法
【代码】C语言C++堆栈打印方法。原创 2024-02-19 10:41:29 · 1636 阅读 · 0 评论 -
一文秒懂static关键字
静态变量 count 在第一次调用 increment() 时被初始化为 0,然后在后续的函数调用中保持其值,不会重复创建和销毁。每次调用 increment() 函数时,count 的值都会自增,并使用 printf 函数输出当前的计数值。通过运行上述代码,您将看到每次调用 increment() 函数时,计数器的值都会增加,并按顺序输出相应的计数值。因此,变量的状态无法在多次函数调用之间保持。关键字时,变量在每次函数调用时都会重新初始化的特性。关键字时,变量在每次函数调用时都会重新初始化的特性。原创 2023-07-18 00:11:58 · 263 阅读 · 0 评论 -
C++字节序测试
而如果是大端字节序的计算机,在内存中,这个整数的高位字节会被存储在低地址处,低位字节则存放在高地址处。,说明当前计算机是大端字节序。如果都不是,就输出一个错误信息,表示无法判断当前计算机的字节序。这里需要注意的是,这个整数本身并没有发生变化,只是在不同的计算机上以不同的字节序存储而已。存放在第一个字节的位置,高位字节则存放在高地址处。如果是小端字节序的计算机,在内存中,这个整数的低位字节会被存储在低地址处,也就是。,在内存中的存储方式取决于所使用的计算机的字节序。,说明当前计算机是小端字节序;原创 2023-06-18 11:54:42 · 621 阅读 · 1 评论 -
C语言随机生成mac地址的代码
函数,它会生成一组随机的 MAC 地址。该函数将第一个字节和第二个字节分别设置为 0,并将余下的 4 个字节填充为随机数。需要注意的是,在实际使用中,可能需要对生成的 MAC 地址进行格式检查和校验,以确保其符合规范并可以被网络设备正确识别和使用。函数用于生成指定范围内的随机整数。函数输出生成的 MAC 地址。该示例中,首先定义了一个。原创 2023-06-06 21:12:08 · 1483 阅读 · 0 评论 -
主函数调用子函数修改值
通过这个例子,我们可以看到如何使用指针和二级指针在函数之间传递参数并修改变量的值。在这个例子中,我们通过传递一级指针。的值,将它们分别设置为 2 和 4,并再次打印它们的值,可以看到它们都被成功修改了。运算符,因为指针本身就是地址。另外,如果你想要修改二级指针所指向的地址的值,则需要使用。的值,可以看到它们都是 1。的值,可以看到它们都是 1。需要注意的是,当我们在。的值,可以看到它们都已经被修改了。函数有两个参数,分别是一级指针。函数内部修改指针时,不需要添加。作为二级指针参数传递给。原创 2023-06-06 18:37:42 · 952 阅读 · 0 评论 -
字符串string转换长整型int(八进制、十进制、十六进制)
strtoul()是C语言标准库中用于将字符串转换成无符号长整数的函数。其中,nptr代表要被转换成无符号长整数的字符串;endptr是一个指向字符指针的指针,该指针指向已经转换了的最后一个字符的下一个位置;base指定要采用的进制,范围是2 ~ 36。该函数返回转换后的无符号长整数。如果在转换过程中发生错误,比如输入的数字超出了有效表示范围或格式不正确,那么该函数返回0,并将endptr指向传入的参数nptr的首地址。需要注意的是,在使用该函数转换字符串时,当base。原创 2023-05-28 18:15:09 · 2685 阅读 · 0 评论 -
C++构造函数和析构函数(附示例代码)
需要注意的是,在一个类中只能有一个析构函数,但可以有多个构造函数。另外,如果一个类没有显式定义构造函数和析构函数,则编译器会自动生成默认的构造函数和析构函数,但默认实现不一定符合需求,因此最好还是显式地定义构造函数和析构函数。总之,构造函数和析构函数是面向对象编程中重要的概念,可以帮助我们更好地管理对象的生命周期、初始化和销毁对象所需的资源。Person(int _age, const std::string& _name) : age(_age), name(_name) {} // 带参构造函数。原创 2023-05-02 14:19:08 · 1064 阅读 · 0 评论 -
函数指针与指针函数
因为()的优先级比指针符号*的优先级高,所以很清楚看到,在int *myfun(int x,int y);中,首先优先级最高的是括号 而它是个函数,所以整体是个函数,只不过返回值类型是指针。而在int (*p)(int, int);中,同时出现了两个括号(*p)和(int, int),那么怎么区分是函数还是指针呢,答案是如果出现多个()就从左到右结合(不理解点击符号优先级)那么先出现的是(*p),它是一个指针,所以整体是个函数指针。原创 2022-09-13 10:57:43 · 955 阅读 · 0 评论 -
引用和指针的区别
1. 初始化引用在定义的时候必须初始化,指针不需要2. NULL没有NULL引用,但有NULL空间3. 实体引用在初始化之后,引用了一个实体不能引用别的实体4.++不同5.多级没有多级引用,但有多级指针6. 引用是按照指针来实现的,引用属于别名,在底层是有空间的...原创 2022-04-29 10:42:54 · 88 阅读 · 0 评论