指向函数的指针与指向二维数组的指针的运用

#include
#include
#include
#include

void main()
{
int search( int *p);
int score[3][4] = {66,55,44,88,66,77,88,99,99,88,88,89};
int (*ptr)[4] = score;
for(int i = 0;i < 3;i++)
{
int *p = search(
(ptr + i));
if(p != NULL)
{
for(int j = 0;j < 4;j++)
{
printf("%d ",*( p + j) );
}
printf("\n");
}
}

system("pause");

}

int search(int *p)
{
int *t = NULL;
for( int i = 0;i < 4;i++)
{
if(
(p + i) < 60)
{
t = p;
}
return t;
}
}

为什么没有输出结果,哪儿错了?

 void main() 
{
    int score[3][4] = {66,55,44,88,66,77,88,99,99,88,88,89};
    int (*ptr)[4] = score;

    for (int i = 0;i < 3;i ++)
    {
        for(int j = 0;j < 4;j++)
        {
            if (ptr[i][j] < 60)
            {
                printf("%d ",ptr[i][j]);
            }
        }       
    }   
    system("pause");
}

为什么没有输出结果,哪儿错了?语法也是错的

int (*ptr)[4] = score;

i =0;i < 3;
ptr[i] 是指针模式 代表的是行

j=0;j < 4;

ptr[i][j] 整型模式,代表行列数值

理解了这个在去修改你的代码。。。