随笔分类 - C/C++
摘要:/********************************引入头文件**************************************************/ #include #include #include /**********************************定义******************************************...
阅读全文
摘要:一、C语言为什么需要内存 1.C语言的目的 计算机程序目的是程序的运行,运行的目的是为了得到一定的结果或者是在运行的过程中执行了某项动作。程序 = 代码(加工数据的动作) + 数据 函数可以完美的解释: 返回值是void ,说明没有输出结果,形参为void,说明没有输入数据。反之,套用即可。当然也有
阅读全文
摘要:1.写出两个整数交换的宏定义 2.设计一个单行的宏ARRAY_SIZE(x),用于计算x代表的数组的元素数目 3.条件编译:
阅读全文
摘要:1.c语言实现统计字符串出现的次数最多的字符 --思路:先要扫描字符串,找出每个字符,并把每个字符出现的次数记录,然后记录的最大值和对应的字符。太多字符种类,不太可能每个字符都定义变量标志和所对应的字符。需要寻找规律。 按照每个字符的ASCII码排列成一个数组,出现一个字符在对应的ASCII位置上加
阅读全文
摘要:(1)注意字符串时,后面隐藏着一个'\0'字符。 而且转义字符算一个字符来计算,转移字符如下图所示: 转义字符 意义 ASCII码值(十进制) \a 响铃(BEL) 007 \b 退格(BS) ,将当前位置移到前一列 008 \f 换页(FF),将当前位置移到下页开头 012 \n 换行(LF) ,
阅读全文
摘要:volatile :用于防止相关变量被优化。 (1)volatile 告诉编译器i是随时可能发生变化的,每次使用它的时候必须从i的地址中读取,因而编译器生成的可执行码会重新从i的地址读取数据放在k中。 (2)而优化做法是,由于编译器发现两次从i读数据的代码之间的代码没有对i进行过操作,它会自动把上次
阅读全文
摘要:1.函数指针 指向函数的指针。本质是一个指针。 指针变量可以指向变量的地址、数组、字符串、动态分配地址,同时也可指向一个函数,每个函数在编译的时候,系统会分配给该函数一个入口地址,函数名表示这个入口地址,那么指向函数的指针变量称为函数指针变量。 引论: int sumup(int a, float
阅读全文
摘要:int a[5]={1,2,3,4,5};int *p = a;*p++ 先取指针p指向的值(数组第一个元素1),再将指针p自增1; cout << *p++; // 结果为 1 cout <<(*p++); // 1(*p)++ 先去指针p指向的值(数组第一个元素1),再将该值自增1(数组第一个元
阅读全文
摘要:a++: 先将a的值代入表达式,在表达式运算完毕后,再将a进行++处理++a: 先将a进行++处理,再将a的值代入表达式(注意咬字) a+++++b在编译时会报错,(a++)+(++b)和a++ + ++b不会报错“a+++++b”这一段根本就无法解析,编译系统从左至右扫描整条语句,先遇到a++,判
阅读全文
摘要:1.废话不多说,先上代码: 2.指针数组和数组指针的区别: 指针数组 : int (*p)[3]; //指针指向数组,p是一个指向数组p[3]的指针。 数组指针: int p[3]; //数组内存到数据是指针 跟 指针常量 常量在指针有点类似,谁先执行谁先读,然后根据读的方向判断具体意思。
阅读全文
摘要:首先free对应的是malloc;delete对应的是new;free用来释放malloc出来动态内存,delete用来释放new出来的动态内存空间。 应用的区别为: 1. 数组的时候int *p=(int*)malloc(10*sizeof(int)) 释放的时候 free(p)即可;这是因为编译
阅读全文
摘要:所谓的缺省函数,就是已经定义了初始变量的函数。 以下代码对于类A中的方法set() 和 普通函数 func() 均有默认值!!
阅读全文
摘要:&的功能: (1)取地址符 (2)引用符 一、定义别名 定义变量的别名 如,int n ; int &m =n; //m是n 的别名 ,可以用int类型的m来表示int类型的n。且m与n的地址也一样。故m 和 n 是同一个东西! 定义对象的别名 如:Human Mike; Human &rMike
阅读全文
摘要:1.cout 和cin是iostream的输入输出中的控制对象。 2.c++程序组成部分:预处理标志#、预处理指令include、头文件、main函数 3.endl功能:(1)“\n”换行 (2)调用输出流的flush函数,刷新缓冲区,让数据直接写入文件或者屏幕(需要立即显示时,比\n要好) 4.s
阅读全文
摘要:堆~变量: C++中创建动态指针: int *p; //定义整型指针变量p p = new int; //new创建一个int类型的内存区域,然后将该区域的内存地址赋给指针变量p,p占用4个字节(int型嘛) 或者 int *p = new int; 释放:delete p; //将动态内存释放,但
阅读全文
摘要:goto语句 输出: ********* 程序结束 一般不用goto语句,调试困难!因为编译器难以报错! switch 语句 转载自http://www.cnblogs.com/zhangjs8385/archive/2011/10/06/2200059.html 1.default就是如果没有符合
阅读全文
摘要:1.有符号int与无符号int比较 结果分析:sizeof() 返回的是无符号整型,因此上述代码中TOTOL_ELEMENTS 的值是unsigned int类型。与 if 语句中signed int 型的 d 比较,signed int 型会被转化成unsigned int 型变量。 -1会转化成
阅读全文
摘要:1.EOF EOF是end of file的缩写,表示"文字流"(stream)的结尾。这里的"文字流",可以是文件(file),也可以是标准输入(stdin)。 EOF不是特殊字符,而是一个定义在头文件stdio.h的常量,一般等于-1。 #define EOF (-1) 除了表示文件结尾,EOF
阅读全文
摘要:1.char变为int时高位符号扩展问题 0x9a 1001 1010 但是强制转换的过程中,int是有符号的,需要对0x9a进行符号扩展,也就是用最高位1来扩展其他3个字节(架设int为4个字节)就会变成 1111111 11111111 11111111 10011010 (8为二进制数中最高位
阅读全文
摘要:联合体,又称共用体。编程的时候需要使几种不同类型的变量存放到同一段内存单元中,而衍生出来的一种类型。也就是说,联合体中每次只能存其中的一个变量,这个变量在联合体变量中存入新的成员就失效了!!!用法与结构体一致,但是多用于结构体内部。 注意: (1)在struct中,各成员都占有自己的内存空间,它们是
阅读全文

浙公网安备 33010602011771号