Home » Aptitude Questions and Answers » C Aptitude Questions and Answers

C Pointers - Aptitude Questions & Answers



C programming Pointers Aptitude Questions and Answers: In this section you will find C Aptitude Questions and Answers on Pointers topics, declaring pointers, using pointers, pointer with other c topics like pointer of array etc.

1) What will be the output of following program ?
#include <stdio.h>
int main()
{
	char	*str="IncludeHelp";
	printf("%c\n",*&*str);
	return 0;
}
  1. Error
  2. IncludeHelp
  3. I
  4. *I

2) What will be the output of following program ?
#include <stdio.h>
int main()
{
	int		iVal;
	char	cVal;
	void	*ptr;	// void pointer
	iVal=50; cVal=65;

	ptr=&iVal;
	printf("value =%d,size= %d\n",*(int*)ptr,sizeof(ptr));
	
	ptr=&cVal;
	printf("value =%d,size= %d\n",*(char*)ptr,sizeof(ptr));
	return 0;
}
  1. Error
  2. value =50,size= 4
    value =65,size= 4
  3. value =50,size= 4
    value =65,size= 1
  4. Garbage Values



3) What will be the output of following program ?
#include <stdio.h>
int main()
{
	char	*str	[]={"AAAAA","BBBBB","CCCCC","DDDDD"};
	char	**sptr	[]={str+3,str+2,str+1,str};
	char	***pp;

	pp=sptr;
	++pp;
	printf("%s",**++pp+2);
	return 0;
}
  1. BBBBB
  2. CCCCC
  3. BBB
  4. Error

4) What will be the output of following program ?
#include <stdio.h>
char* strFun(void)
{
	char *str="IncludeHelp";
	return str;
}
int main()
{
	char *x; 
	x=strFun();
	printf("str value = %s",x);
	return 0;
}
  1. str value = Garbage value
  2. str value = IncludeHelp
  3. Error
  4. No output



5) If the address of pointer ptr is 2000, then what will the output of following program ?
[On 32 bit compiler.]
#include <stdio.h>
int main()
{
	void *ptr;
	++ptr;
	printf("%u",ptr);
    return 0;
}
  1. 2004
  2. 2001
  3. 2000
  4. ERROR

6) What will be the output of following program ?
#include <stdio.h>
int main()
{
	char ch=10;
	void *ptr=&ch;
	printf("%d,%d",*(char*)ptr,++(*(char*)ptr));
	return 0;
}
  1. 11,11
  2. 10,11
  3. ERROR
  4. 10,10


7) What will be the output of following program ?
#include <stdio.h>
int main()
{
	int a=10,b=2;
	int *pa=&a,*pb=&b;
	printf("value = %d", *pa/*pb);
	return 0;
}
  1. 5
  2. 5.0
  3. ERROR
  4. None of these

8) What will be the output of following program ?
#include <stdio.h>
void fun(int *ptr)
{
	*ptr=100;
}
int main()
{
	int num=50;
	int *pp=#
	fun(& *pp);
	printf("%d,%d",num,*pp);
	return 0;
}
  1. 100,100
  2. 50,50
  3. 50,100
  4. ERROR in function calling






Was this page helpful? YES NO

Are you a blogger? Join our Blogging forum.



Comments and Discussions


We are using Google to publish ads on our website; Google has its own privacy policies. They may save log, cookies on your system. Google may also collect information of your system like IP address, region, city, country. For more details please go through the Google’s privacy policy.