C++/C面试题集
2016-01-19 22:55
239 查看
1、C++与C的区别
(1)动态分配内存
C语言:
a. malloc函数:在内存的动态存储区中分配一个长度为size的连续空间;
void *malloc(unsigned int size);
b. calloc函数:在内存的动态存储区中分配n个长度为size的连续空间;
void *calloc(unsigned n, unsigned size);
c. free函数:释放由p所指向的内存区
void free(void *p);
d. void指针类型:在将它的值赋给另一指针变量时要进行要进行强制类型转换使之适合于被赋值的变量的类型
e. realloc函数
C++语言:
a. new:只需指定其数据类型,与在函数内定义的变量的初始化方式相同
动态创建对象:int *pi=new int;
动态创建数组:int *pia=new int[10];
b. delete:对于动态创建的对象或数组,必须要显示释放;
释放对象:delete pi;
释放数组:delete [] pia;
c. 在delete之后,重设指针的值;
delete命令释放了指针所指向对象所占用的内存空间;
在删除指针后,该指针变成悬垂指针;
一旦删除了指针所指向的对象,立即将指针置为0;
d. 用new创建多维数组
1)new 类型名T[下标表达式1][下标表达式2]……;
2)如果内存申请成功,new运算返回一个指向新分配内存的首地址的指针,但不是T类型指针,而是一个指向T类型数组的指针,数组
元素的个数为除最左边一维外各维下标表达式的乘积。
(2) 输入与输出
1)C语言: printf, scanf
(1)动态分配内存
C语言:
a. malloc函数:在内存的动态存储区中分配一个长度为size的连续空间;
void *malloc(unsigned int size);
b. calloc函数:在内存的动态存储区中分配n个长度为size的连续空间;
void *calloc(unsigned n, unsigned size);
c. free函数:释放由p所指向的内存区
void free(void *p);
d. void指针类型:在将它的值赋给另一指针变量时要进行要进行强制类型转换使之适合于被赋值的变量的类型
e. realloc函数
C++语言:
a. new:只需指定其数据类型,与在函数内定义的变量的初始化方式相同
动态创建对象:int *pi=new int;
动态创建数组:int *pia=new int[10];
b. delete:对于动态创建的对象或数组,必须要显示释放;
释放对象:delete pi;
释放数组:delete [] pia;
c. 在delete之后,重设指针的值;
delete命令释放了指针所指向对象所占用的内存空间;
在删除指针后,该指针变成悬垂指针;
一旦删除了指针所指向的对象,立即将指针置为0;
d. 用new创建多维数组
1)new 类型名T[下标表达式1][下标表达式2]……;
2)如果内存申请成功,new运算返回一个指向新分配内存的首地址的指针,但不是T类型指针,而是一个指向T类型数组的指针,数组
元素的个数为除最左边一维外各维下标表达式的乘积。
(2) 输入与输出
1)C语言: printf, scanf
相关文章推荐
- 一个关于if else容易迷惑的问题
- 一道sql面试题附答案
- C# 超高面试题收集整理
- 人人网javascript面试题 可以提前实现下
- PHP中设置一个严格30分钟过期Session面试题的4种答案
- 据说是雅虎的一份PHP面试题附答案
- php牛逼的面试题分享
- 一套比较完整的javascript面试题(部分答案)
- 小米公司JavaScript面试题
- 超级全面的PHP面试题整理集合第1/2页
- 5个实用的shell脚本面试题和答案
- PHP经典面试题集锦
- 8个PHP数组面试题
- PHP中提问频率最高的11个面试题和答案
- 用PHP解决的一个栈的面试题
- PHP面试题之文件目录操作
- 几道坑人的PHP面试题 试试看看你会不会也中招
- 7个去伪存真的JavaScript面试题
- 5个JavaScript经典面试题
- 你有必要知道的25个JavaScript面试题