随笔分类 - 技术-C/C++
摘要:1、分析如下代码#include using namespace std;int main(){ int *p1 = NULL, *p2 = NULL; int buf1[2] = {10, 5}; int buf2[2] = {10, 5}; p1 = &buf1[0]; ...
阅读全文
摘要:数组名相当于指向数组第一个元素的地址。数组名不是变量,是地址常量,不能为其赋值。如下:1)一维数组中对于数组 a[5] = {1, 2, 3, 4, 5};数组名a相当于指向第一个元素a[0]的指针。即 a 与 &a[0] 等价。2)二维数组中int a[2][3] = {1, 2, 3, 4, 5...
阅读全文
摘要:1、Java的静态方法,主要是为了供用户方便的调用。采用“类名.方法名”的方式访问。比如Math类中的大多数方法是静态的。2、C中函数前加 static主要是对作用域进行限制。如下:A "static" function tells the compiler that other program f...
阅读全文
摘要:1、如下代码char c[5] = {'h', 'a', '\0'};char *p = c;cout (c) (p) << endl;
阅读全文
摘要:1、问题描述写出代码中sizeof的结果#include #include using namespace std;class A1 { A1() {} ~A1() {}};class Base {public: Base () { cout ) { cout << "Derive...
阅读全文
摘要:1、问题描述求解下面程序结果#include using namespace std;class A1 {public: int a; static int b; A1(); ~A1();};class A2 {public: int a; char c; ...
阅读全文
摘要:1、CPU的优化规则大致是这样的:对于n字节的元素(n = 2, 4, 8)它的首地址能整除n,才能获得最快的存取速度。2、数据对齐,是指数据所在的内存地址必须是该数据长度的整数倍,DWORD数据的内存起始地址能被4除尽,WORD数据的内存起始地址能被2除尽。
阅读全文
摘要:1、问题描述What is the output of the following code?#include #include using namespace std;int main(){ char *ss1 = "0123456789"; char ss2[] = "0123456...
阅读全文
摘要:一、引用相关概念1、定义引用时,一定要将其初始化成引用某个变量。2、初始化后,它就一直引用该变量,不会再引用别的变量了。3、引用只能引用变量,不能引用常量和表达式。二、引用示例引用应用的简单示例1、(交换变量的值)#include using namespace std;void swap(int ...
阅读全文
摘要:1、问题描述有两个int型变量a 和 n要求写一个表达式,使该表达式的值和a的第n位相同2、不全面的实现在单片机程序中经常见到的实现是(a & (1 > n但需要注意的是该实现当n是31的时候,若正好是个负数,则符号位为1,右移31位后得出的结果并不是1!3、正确解法(a >> n) & 1该方法在...
阅读全文
摘要:1)如果 a^b = c 那么就有 c^b = a 以及 c^a = b (穷举法证明)此规律可以用来进行最简单的加密及解密2)另外异或运算还能实现不通过临时变量,就能交换两个变量的值(且无溢出风险) a = a ^ b; b = b ^ a; a = a ^ b;
阅读全文
摘要:1、C语言定义的非常宽泛1)long型数据长度不短于int型2)short型数据长度不长于int型2、由1引起的问题1)相同的程序在不同的编译器上有具有不同的的解释2)相同的程序在不同的平台上运行结果不同例如:整型变量的定义、对++、--的解释、输入输出赋值顺序的不同、浮点数计算精度的不同等
阅读全文
摘要:1、第一层直接原因,如果不加extern "C",C++程序调用C接口会出现如下错误(链接时)undefined reference以实例演示:1)错误示例在ss.c中有如下代码#include void cfun_output(int x){ printf("%d\n", x);}在ss.h...
阅读全文
摘要:#include #ifndef C_Class#define C_Class struct#endifC_Class Rf { int power; void (*set_power)(C_Class Rf *p, int power);};void set_power(C_Class...
阅读全文
摘要:1、问题描述有类如下class A_class{ void f() const { ... }};在上面这种情况下,如果要修改类的成员变量,该怎么办?2、析C++中,类的数据成员加上mutable后,修饰为const的成员函数,就可以修改它了 。3、举例如下测试类头文...
阅读全文
摘要:C++ 可以使用const定义常量,也可用#define定义常量,前者比后者有更多优势。1)const数据常量有数据类型,而宏常量没有数据类型。编译器可对前者进行类型安全检查,而对后者只进行字符串替换2)有些集成化调试工具可对const常量进行调试,但不能对宏常量进行调试,c++中只使用const常...
阅读全文
摘要:#include int main(int argc, char *argv[]){ int i = 0; for (i = 0; i < argc; i++) { printf("%s\n", argv[i]); } return 0;}1、说明...
阅读全文
摘要:1、基本概念程序运行期间,每个函数都会占用一段连续的内存空间。而函数名就是该函数所占内存区域的起始地址(也称“入口地址”)。我们可以将函数的入口地址赋给一个指针变量,使该指针变量指向该函数。然后通过指针变量就可以调用这个函数。这种指向函数的指针变量称为“函数指针”。2、指针变量的定义形式返回值类型名...
阅读全文

浙公网安备 33010602011771号