第10講 ポインタのポインタの学習  
第4話 ポインタのポインタと2次元配列
入門
のコード例
#include<iostream>
using namespace std;
using namespace System;
void f();
int main(){
   f();
}
void f(){
   int** a;
   int i,j;
   cout<<"ポインタのポインタの場合"<<endl;
   a=(int **)malloc(20);
   for(i=0;i<5;i++){
     a[i]=(int *)malloc(20);
   }
   for(i=0;i<5;i++){
     for(j=0;j<5;j++){
       a[i][j]=5*i+j+1;
     }
   }
   for(i=0;i<5;i++){
     for(j=0;j<5;j++){
       if(a[i][j]<10)cout<<" "<<a[i][j]<<" ";
       if(a[i][j]>=10)cout<<a[i][j]<<" ";
     }
     cout<<endl;
   }
   cout<<endl;
   cout<<endl;
   cout<<"2次元配列の場合"<<endl;
   int b[5][5];
   for(i=0;i<5;i++){
     for(j=0;j<5;j++){
       b[i][j]=5*i+j+1;
     }
   }
   for(i=0;i<5;i++){
     for(j=0;j<5;j++){
       if(b[i][j]<10)cout<<" "<<b[i][j]<<" ";
       if(b[i][j]>=10)cout<<b[i][j]<<" ";
     }
     cout<<endl;
   }
}

どうです。皆さん、
   int** a;
   int ij;
   a=(int **)malloc(20);
   for(i=0;i<5;i++){
     a[i]=(int *)malloc(20);
   }
とすると、2次元配列とまったく同様に扱えることがわかりますよね。

では、皆さんポインタのポインタを用いて4次魔方陣作成プログラムと6次魔方陣作成プログラムを変更してみましょう。
魔方陣
6次

第3話へ 第5話へ


戻る


VB講義へ
VB講義基礎へ

vc++講義へ第1部へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座
初心者のための世界で一番わかりやすいVBA入門講義(基礎から応用まで)