C言語及びプログラム設計向上ルーチン-35ポインタを用いて二次元配列を操作する
1302 ワード
先生の授業リンクを祝う C言語及びプログラム設計の向上 この授業の説明
2 D配列要素へのポインタの使用
2 D配列要素へのポインタの使用
#include <stdio.h>
int main( )
{
int a[3][4]= {1,3,5,7,9,11,13,15,17,19,21,23};
int *p;
for(p=a[0]; p<a[0]+12; p++)
{
printf("%3d ",*p);
}
return 0;
}
1 D配列へのポインタの使用#include <stdio.h>
int main( )
{
int a[3][4]= {1,3,5,7,9,11,13,15,17,19,21,23};
int i,j,(*p)[4];
for(p=a,i=0; i<3; i++,p++)
{
for(j=0; j<4; j++)
printf("%3d ",*(*p+j));
printf("
");
}
return 0;
}
1 D配列を指すポインタの2つを使用#include <stdio.h>
int main( )
{
int a[3][4]= {1,3,5,7,9,11,13,15,17,19,21,23};
int (*p)[4], i, j;
p=a[0];
for (i=0; i<3; i++)
{
for(j=0; j<4; j++)
printf("%d\t", *(*(p+i)+j));
printf("
");
}
return 0;
}
ポインタ配列の使用#include <stdio.h>
int main()
{
int b[2][3]= {{1,2,3},{2,4,6}};
int *pb[2];
int i,j;
pb[0]=b[0];
pb[1]=b[1];
for(i=0; i<2; i++)
{
for(j=0; j<3; j++,pb[i]++)
printf("%2d",*pb[i]);
printf("
");
}
return 0;
}