====== 数组不转换为指针的场合 ====== 数组与指针的关系很密切,很多时候数组会转换成指针使用,比如[[.:unary_conversions|一元转换]]、[[.:function_argument_conversions|函数参数转换]]。 但以下场合例外: * sizeof,此时返回的是整个数组的大小(size),而不是一个指针的大小; * &(取地址操作),获得一个指向数组的指针,而不是一个指向数组首元素的指针的地址; * 用字符串常量初始化一个字符数组。 例如,有一个数组: int array[N]; 则&array的类型是: int (*)[N] 而不是int *,或者int **。 {{tag>C语言}}