本人目前还是学生,能力有限,有不足或者错误的地方欢迎大家指正,谢谢大家!
1、继承方式
C++是一个很好的编译语言,因为你的parent(父母)不能访问你的private(隐私),但是你的friend(朋友)可以。
2、变量的声明和定义有什么区别?
声明变量不分配空间,定义变量要分配空间。声明主要是告诉编译器,后面的引用都按声明的格式。定义其实包含
了声明的意思,同时要分配内存空间。
3、 const的作用是什么?
(1)可以定义const常量
(2)const可以修饰函数的参数、返回值,甚至函数的定义体。被const修饰的东西都受到强制保护,
可以预防意外的变动,能提高程序的健壮性。
4、下列哪两个是等同的
int b;
A const int* a = &b; //指向常量的指针,不能通过指针改变b,但指针的地址可以改变。
B const* int a = &b;// 指针的地址不可以改变,但可以通过指针改变b的值
C const int* const a = &b; //指针指向的值,和指针本身的地址都不能改变
D int const* const a = &b;//与c相同
5、 int i=(j=4,k=8,l=16,m=32); printf(“%d”, i); 输出是多少?
相当于 i=j=4;i=k=8;i=l=16;i=m=32; 故最后i=32;
6、 请写出下面代码在 32 位平台上的运行结果,并说明sizeof的性质:
#include
#include
int main(void)
{
char a[30];
int a[2];
sizeof(a);就是4*2
char *b = (char *)malloc(20 * sizeof(char));
printf(“%d\n”, sizeof(a));
printf(“%d\n”, sizeof(b));
printf(“%d\n”, sizeof(a[3]));
printf(“%d\n”, sizeof(b+3));
printf(“%d\n”, sizeof(*(b+4)));
return 0 ;
}
在32位系统下(如WIN32),指针长度为32位。a是一个有30个元素的字符型数组;b是一个字符串指针;
a[3]是字符型;b+3是指针;*(b+4)是字符型。 因此输出: 30、4、1、4、1
7、malloc
int* p;
p = (int *) malloc (sizeof(int)*128);//分配128个(可根据实际需要替换该数值)整型存储单元,
并将这128个连续的整型存储单元的首地址存储到指针变量p中
C++的类前面不能有public等修饰词
今天就到这里,有不足的地方还请指正,谢谢大家!