自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 资源 (1)
  • 收藏
  • 关注

原创 指针常量和常量指针

参考自:《C和C++程序员面试秘籍》指针常量:它本身不能被修改,指向的内容可以被修改。常量指针:它本身可以被修改,指向的内容不能被修改。const char *node1 = "abc";char *const node2 = "abc";char *node3 = "abc";node1[2] = 'k';/*error: assignment of read-only location ‘*(node1 + 2u)’*/*node1[2] = 'k';/*invalid type arg

2020-10-17 16:29:50 310

原创 复杂指针的声明和关于指针的几个小例子

参考自:《C和C++程序员面试秘籍》a: 一个有10个指针的数组,该指针是指向一个整型数的int *a[10]b:一个指向有10个整型数数组的指针int (*a)[10]c:一个指向函数的指针,该函数有一个整形参数并返回一个整型数int (*fun)(int)d:一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返回一个整型数int (*fun[10])(int)如何解读复杂指针?int (*func)(int *p);解析上面这行代码:首先找到未定义的标识

2020-10-17 15:50:08 201

原创 字节对齐

字节对齐的细节和编译器实现有关,一般而言,需要满足3个准则:1:结构体变量的首地址能够被其最宽基本类型成员的大小所整除2:结构体每个成员相对于结构体首地址的偏移量(offset)都是成员大小的整数倍。如有需要,编译器会在成员之间加上填充字节。3:结构体的总大小为结构体最宽基本类型成员大小的整数倍,如有需要,编译器会在最末一个成员之后加上填充字节。对齐是可以更改的,使用#pragma pack(x)可以改变编译器的对齐方式。C++固有类型的对齐取 编译器对齐方式(默认是8,除非#pragma pac

2020-10-15 16:27:04 150

转载 一个字由两个字节组成

字(word)、字节(byte)、位(bit)字 word : 1字=2字节(1 word = 2 byte ) 字长是指字的长度字节byte :1字节=8位(1 byte = 8 bit)位 bit一个字的字长为16一个字节的字长是8波特率bps 是 bits per second 的简称。一般数据机及网络通讯的传输速率都是以「bps」为单位。如56 Kbps、100.0Mbps 等。Bps即是Byte per second 的简称。而电脑一般都以Bps显示速度,如1Mbps 大约等同 12

2020-10-15 11:41:34 4717

转载 C语言宏参数的字符串化和宏参数的连接

在宏定义中,有时还会用到 # 和 ## 两个符号,它们能够对宏参数进行操作。的用法用来将宏参数转换为字符串,也就是在宏参数的开头和末尾添加引号。例如有如下宏定义:#define STR(s) #s那么:printf("%s", STR(c.biancheng.net));printf("%s", STR(“c.biancheng.net”));分别被展开为:printf("%s", “c.biancheng.net”);printf("%s", ““c.biancheng.net””);

2020-10-15 11:28:52 1075

原创 c++中main函数执行完后还执行其他语句吗

可以用atexit()函数来注册程序正常终止时要被调用的函数,并且在main()函数结束时,调用这些函数的顺序与注册它们的顺序相反。#include <stdio.h>#include <stdlib.h>void fn1(void);void fn2(void);int main(){atexit(fn1);atexit(fn2);printf(“main exit…\n”);return 0;}void fn1(){printf(“calling fn

2020-10-15 11:17:31 354

原创 C++与C有什么区别?

C是一个结构化语言,它的重点在于算法和数据结构。对语言本身而言,C是C++的子集。C程序的设计首先考虑的是如何通过一个过程,对输入进行运算处理,得到输出。对于C++,首先考虑的是如何构造一个对象模型,让这个模型能够配合对应的问题,这样就可以通过获取对象的状态信息得到输出或实现过程控制。因此,C与C++的最大区别在于,它们用于解决问题的思想方法不一样。C实现了C++中过程化控制及其他相关功能。而在C++中的C,相对于原来的C还有所增强,引入了重载、内联函数、异常处理等。C++更是拓展了面向对象设计

2020-10-15 11:04:53 382

原创 如何学习linux内核网络协议栈?

如何学习linux内核网络协议栈?

2020-10-15 09:17:24 276

原创 带符号的char类型取值范围为什么是-128——127?

。。。

2020-10-14 23:15:56 165

原创 有符号变量和无符号变量的值的转换

当表达式中存在有符号类型和无符号类型时,所有的操作数都自动转换成无符号类型。有符号数如何转换成无符号数呢?其实并不需要转换,只不过是从内存中读取时不再认为最高位是符号位即可。举例:-7这个负数在内存中按照补码的形式存储,为11111111 11111111 11111111 11111001-7与正数做运算,根据规则是先转换为无符号数,再做运算,那就是说是;11111111 11111111 11111111 11111001

2020-10-14 22:13:20 480

原创 i++和++i 哪个效率更高

答案:如果只是内建数据类型,它们的效率差别不大(去除编译器优化的影响)。如果是自定义数据类型(主要指类),++i效率更高。此时我们不需要再做汇编代码的分析了,因为前缀式(++i)可以返回对象的引用,而后缀式只能返回对象的值,所以产生了在大对象时产生了较大的复制开销,引发效率降低。...

2020-10-14 15:10:49 269

原创 c语言中-号和++ --运算符优先级

-i++;-i--先输出-i,再分别进行+1和-1操作切记:不是对-i进行+1和-1

2020-10-14 15:01:42 2200

原创 c++的::域操作符

在C++中可以通过域操作符::来直接操作全局变量:: value = 2;如果代码里同时有全局和局部的value,修改的是全局变量value,而不是局部变量value

2020-10-14 14:55:49 551

Openet Modeler论坛精华.pdf

Openet Modeler论坛精华希望对别人有用。

2014-01-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除