A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 TTsu 于 2015-9-6 01:29 编辑

#include <stdio.h>

int main(int argc, const char * argv[]) {  
    int arr[3][3] = {
        {1,2,3},  //  &arr[0][0]   ---> p[0]
        {4,5,6}, //
        {7,8,9}  //
    };
       int (*p)[3] = arr;
        for (int i = 0; i < 3; i++) {  
                for (int j = 0; j < 3; j++) {                  
                  printf("%d\t",*p+j);
                }
            printf("\n");
        }

   
    return 0;
}
运行结果:
1        2        3        
4        5        6        
7        8        9
个人见解还是不发了

评分

参与人数 1黑马币 +6 收起 理由
itheima-zx + 6 淡定

查看全部评分

7 个回复

正序浏览
*p+j  难道不是行指针取值吗???
回复 使用道具 举报
TTsu 中级黑马 2015-9-6 09:24:33
7#
我明明想打的时printf("%d\t",*p[i]+j)   
为什么论坛里面老给我显示成printf("%d\t",*p+j)
回复 使用道具 举报
本帖最后由 TTsu 于 2015-9-6 09:23 编辑
我张云杰 发表于 2015-9-6 08:56
printf("%d\t",*(*(p+i)+j);这个才对,你那个结果肯定不对

我说了是列指针 printf("%d\t",*p+j) 没有问题
回复 使用道具 举报
printf("%d\t",*(*(p+i)+j);这个才对,你那个结果肯定不对
回复 使用道具 举报
本帖最后由 TTsu 于 2015-9-6 01:47 编辑
颖峰 发表于 2015-9-6 01:34
为什么没有个人见解啊

列指针啊
回复 使用道具 举报
为什么没有个人见解啊  
回复 使用道具 举报
                  printf("%d\t",*p+j); 应是                  printf("%d\t",*p[i]+j);不知道为什么怎么修改都改不过去
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马