C语言 详解多级指针与指针类型的关系
展开全部
多级指针是人为定义的类别,通常与指针类型没有直接关系。
比如一级指针的值是某个数据的地址,二级指针值是一个指针的地址。
而指针步长与指针类型相关,与几级指针无关。
指针的步长是指向的内存空间的大小。
比如数组 int n[10];n 是指向n[0]的地址指针,n的步长就是n[0]数据类型大小,也就是int的大小。
又比如 int *str[2]={"aaa","bbb"}; str就是指向“aaa”首地址指针的指针。str[0]就是指向aaa”首地址的指针(char *类型),而str就是指向str[0]的指针(char **类型),所以str指向内存空间大小就是(char *)这个类型的大小,也就是其步长。
比如一级指针的值是某个数据的地址,二级指针值是一个指针的地址。
而指针步长与指针类型相关,与几级指针无关。
指针的步长是指向的内存空间的大小。
比如数组 int n[10];n 是指向n[0]的地址指针,n的步长就是n[0]数据类型大小,也就是int的大小。
又比如 int *str[2]={"aaa","bbb"}; str就是指向“aaa”首地址指针的指针。str[0]就是指向aaa”首地址的指针(char *类型),而str就是指向str[0]的指针(char **类型),所以str指向内存空间大小就是(char *)这个类型的大小,也就是其步长。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询