C语言中 int b{1,2,3}; b+2啥意思?? 在C语言中,int b【】【3】={0,1,2,3}是什么意...

\u5728c\u8bed\u8a00\u91cc\uff0cint b[3]={1,2,3}; \u90a3\u4e48 b\uff0b1\u8868\u793a\u4ec0\u4e48\uff1f

b\u5c31\u662f&b[0]\uff0c+1\u5c31\u6307\u5411\u5185\u5b58\u4e2d\u7684\u4e0b\u4e00\u4e2a
b+1\u662f&b[1]\uff0c

\u5b9a\u4e49\u4e8c\u7ef4\u6570\u7ec4\u53d8\u91cfb\uff1b
\u9ed8\u8ba4\u7684\u521d\u59cb\u5316\u503c\u662fb[][3]={{0,1,2},{3,0,0}};
\u6240\u4ee5\u6700\u7ec8\u7684\u5b9a\u4e49\u53ca\u521d\u59cb\u5316\u7ed3\u679c\u662fb[2][3]={0,1,2,3,0,0};

你想写得是int b[]={1,2,3};

定义数组b,初始化数组的3个元素分别值是1,2,3。(定义时直接给数组初值,可不指定维度,但如果不给初值,必须有维度大小,比如int b[3];)

所以这里b是数组名,表示数组首地址常量,b+2就是数组第三个元素的地址(等同于&b[2])。

同理b,b+1,b+2分别对应数组三个元素的地址,对其取值*b,*(b+1),*(b+2)就是三个数组元素的值1,2,3。

如下:

#include <stdio.h>

int main()

{

    int b[]={1,2,3};

    printf("数组三个元素分别为:%d,%d,%d
",*b,*(b+1),*(b+2));

    return 0;

}

//PS:注意数组名是指针常量,不能对其赋值,可用于+运算,不能自增,所以可写b+1,不能写b++。



没啥意思,
这语句不完整,编译错误

扩展阅读:c++教程 ... int main 什么意思 ... int a[10] ... c语言int取整怎么取 ... c语言printf用法例子 ... int是什么意思c语言1 ... int a[2][3] ... c语言怎样把int转float ... int 4 中的4怎么才有用 ...

本站交流只代表网友个人观点,与本站立场无关
欢迎反馈与建议,请联系电邮
2024© 车视网