-
描述下列指针意义
普通指针: 一个存储地址的变量
数组指针:存储数组首地址的变量
函数指针:存储函数首地址的变量
二级指针:存储一级指针本身地址的变量
-
什么是指针常量和常量指针
指针常量:指针本身是常量,指向的地址不可以改变,在定义时必须同时赋初值
常量指针:指向常量的指针,不能指向变量,指向的内容不可改变
-
什么是数组指针和指针数组
数组指针:本质是指针,指向一个数组首地址
指针数组:本质是数组,存的都是指针变量
-
你对数组和函数的理解是什么
数组本质上只是编译器在内存空间上开辟的一连串的内存,数组名就是数组的首地址。
函数是代码的封装、功能的复用、隐藏实现细节、模块化,是C语言源程序的最小单位,函数名是函数所占内存空间的首地址,和数组一样都是一段连续空间。
-
如何把一个一维数组逻辑上转换为二维数组
b[i][j]=a[i*h+j];
-
malloc的作用是什么,为什么需要它
用于在堆区动态地分配内存空间;因为栈区空间有限,需要我们手动在栈区申请空间
-
什么是指向函数的指针,请书写一个函数有2个int类型参数返回值为float的指针
函数指针,存的是函数首地址;
float (*p)(int a, int b)
-
在main函数中如何获取外部传递的启动参数,请书写完全
int main(int argc, char* argv[])
-
int(*s[10])(int)表示的是什么
一个指针数组,存的指针指向的是有一个int类型返回值为int的函数
-
指针的使用错误有哪些
空指针、野指针(指向释放后的地址或未初始化)、数组越界、未释放内存