pointer নিয়ে কিছু example দেওয়া হল :
EXAMPLE 1 :
//pointer
#include<stdio.h>
int main()
{
int *p,a;
p = &a;
*p=5;
printf("%d\t %d\n",a,*p);
return 0;
}
EXAMPLE 2 :
যখন আমরা পয়েন্টার ভ্যারিয়েবল দিয়ে কোন ভ্যারিয়েবল এর এড্রেস বের করতে চাইবো, তখন শুধু পয়েন্টার ভ্যারিয়েবল লিখলেই হবে। কিন্তু যখন আমরা পয়েন্টার ভ্যারিয়েবল দিয়ে মূল ভ্যারিয়েবল এর ভ্যালু বের করতে চাইবো, তখন পয়েন্টার ভ্যারিয়েবল এর আগে * যোগ করতে হবে।
//pointer
#include<stdio.h>
int main()
{
int x,y;
int *p,*q;
p=&x;
q=&y;
x=5;
y=7;
printf("%d %d %d %d",*p,x,*q,y);
printf("\n%d %d %d %d",p,&x,q,&y);
return 0;
}
EXAMPLE 3 :
#include<stdio.h>
int main()
{
int arr[100]={5,4,1,2,4,};
printf("%d %d %d %d\n",arr,&arr[0],arr[0],arr[1]);
return 0;
}
EXAMPLE 4 :
//pointer
#include<stdio.h>
int main()
{
int a,*pa=&a;
char c,*pc=&c;
float f,*pf=&f;
double d,*pd=&d;
printf("%d %d %d %d",pa,pc,pf,pd);
return 0;
}
EXAMPLE 5 :
(*p)++; যাকে pointer করছে তার মান বাড়ার জন্য ।
*p++; adress এর মান বাড়ার জন্য ।
#include<stdio.h>
int main()
{ int a=5,*p=&a;
printf("%d %d %d\n",a,*p,p);
(*p)++;
printf("%d %d %d\n",a,*p,p);
*p++;
printf(" %d\n",p);
return 0;
}
EXAMPLE 6 :
arr1+5 হল arr1[5]হতে arr1[7] পর্যন্ত মান printf করবে .
//string pointer
#include<stdio.h>
#include<string.h>
int main()
{ char arr[]="EWU";
char arr1[]="DINajpur";
char *p;
p=strcpy(arr,arr1+5);
printf("%s",p);
printf(" %d %d",p,arr);
return 0;
}
EXAMPLE 7 :
#include<stdio.h>
int main()
{
int arr[10]={2,4,1,7,4,3,9};
int *p;
p=&arr[5];
printf("%d %d\n",*p,*(p+1));
return 0;
}
EXAMPLE 8 :
#include<stdio.h>
#include<string.h>
struct structure{
char name[12];
int value;
};
void swap(struct structure *a,struct structure *b)
{
struct structure temp;
strcpy(temp.name,a->name);
temp.value=a->value;
strcpy(a->name,b->name);
a->value=b->value;
strcpy(b->name,temp.name);
b->value=temp.value;
}
int main()
{
struct structure val1,val2;
printf("ENTER val1 Name and value \n");
scanf("%s%d",val1.name,&val1.value);
printf("ENTER val1 Name and value \n");
scanf("%s%d",val2.name,&val2.value);
if(val2.value>val1.value)
swap(&val1,&val2);
printf("val1 (%d) %s \n",val1.value,val1.name);
printf("val2 (%d) %s \n",val2.value,val2.name);
return 0;
}