#include <stdlib.h>
#include <windows.h>
#include <stdio.h>
int main()
{
//pointer
BYTE *pImg;
pImg=new BYTE[4];
for (int i=0;i<4;i++)
{
pImg[i]=i;
}
printf("The data in pImg: ");
for (int i=0;i<4;i++)
{
printf("%d ",pImg[i]);
}
//pointer of pointer
BYTE **ppImg;
int k=4;
ppImg=new BYTE *[2];
for (int i=0;i<2;i++)
{
ppImg[i]=new BYTE [2];
}
for (int i=0;i<2;i++)
{
for (int j=0;j<2;j++)
{
ppImg[i][j]=k;
k++;
}
}
printf("\nThe data in ppImg: ");
for (int i=0;i<2;i++)
{
for (int j=0;j<2;j++)
{
printf("%d ", ppImg[i][j]);
}
}
//transform the data from pointer to pointer of pointer
k=0;
for (int i=0;i<2;i++)
{
for (int j=0;j<2;j++)
{
pImg[k]=ppImg[i][j];
k++;
}
}
printf("\nThe transformed pointer is: ");
for (int i=0;i<4;i++)
{
printf("%d ",pImg[i]);
}
//1D array
k=8;
int a[4];
for (int i=0;i<4;i++)
{
a[i]=k;
k++;
}
printf("\nThe data in a: ");
for (int i=0;i<4;i++)
{
printf("%d ",a[i]);
}
//pointer of array
int *pArray;
printf("\nthe data index by pArray: ");
for (pArray=a;pArray<(a+4);pArray++)
{
printf("%d ", *pArray);
}
delete pImg;
for (int i=0;i<2;i++)
{
delete ppImg[i];
}
delete ppImg;
printf("\n");
system("pause");
return 0;
}