万千只cnm 发表于 2021-5-29 14:58:35

c与指针 数组名


数组名不是指针常量嘛相当于 char *const p;所以不能做左值   
在C中,在几乎所有使用数组名的表达式中,数组名的值是一个指针常量,也就是数组第一个元素的地址。它的类型取决于数组元素的类型:如果它们是int类型,那么数组名的类型就是“指向int的常量指针”。

后面一句话怎么理解{:5_104:}数组名的类型指什么



wp231957 发表于 2021-5-29 15:00:34

double *
int *
char*
等等

万千只cnm 发表于 2021-5-29 15:03:27

wp231957 发表于 2021-5-29 15:00
double *
int *
char*


指向int的常量指针
这常量指针怎么理解

人造人 发表于 2021-5-29 15:21:59

万千只cnm 发表于 2021-5-29 15:03
这常量指针怎么理解

大概就是这样了 char *const p;

万千只cnm 发表于 2021-5-29 15:39:39

人造人 发表于 2021-5-29 15:21
大概就是这样了 char *const p;


那整句话到底啥意思{:5_104:}

人造人 发表于 2021-5-29 15:58:31

万千只cnm 发表于 2021-5-29 15:39

那整句话到底啥意思

就是说,这样的代码是错误的
#include <stdio.h>

int main(void) {
    double *arr;
    arr = 100;
    return 0;
}
页: [1]
查看完整版本: c与指针 数组名