Members Bookmarks Fresher Jobs Strange Photos Academic Projects New Member FAQ  



My Profile
Active Members
TodayLast 7 Days more...



Awards & Gifts
Online Exams

Fresher Jobs


Our fresher job section is exclusively for fresh graduates! Find jobs for freshers in major Indian cities including Bangalore, Chennai, Hyderabad, Pune or Kochi

Resources


Find educational articles, blogs, discussion threads and other resources.

Colleges


Find details about any college in India or search for courses.

Paid Surveys


website counter



C Debugging - Part 8


Posted Date: 05 May 2008    Resource Type: Articles/Knowledge Sharing    Category: Placement Papers

Posted By: Ramkumar       Member Level: Diamond
Rating:     Points: 3



81) main(int argc, char **argv)

{

printf("enter the character");

getchar();

sum(argv[1], argv[2]);

}

sum(num1,num2)

int num1,num2;

{

return num1+num2;

}

Answer:

Compiler error.

Explanation:

argv[1] & argv[2] are strings. They are passed to the function sum without converting it to integer values.



82) # include

int one_d[]={1,2, 3};

main()

{

int *ptr;

ptr=one_d;

ptr+=3;

printf("%d", *ptr);

}

Answer:

garbage value

Explanation:

ptr pointer is pointing to out of the array range of one_d.



83) # include

aaa() {

printf("hi") ;

}

bbb(){

printf("hello" );

}

ccc(){

printf("bye" );

}

main()

{

int (*ptr[3])();

ptr[0]=aaa;

ptr[1]=bbb;

ptr[2]=ccc;

ptr[2]();

}

Answer:

bye

Explanation:

ptr is array of pointers to functions of return type int.ptr[0] is assigned to address of the function aaa. Similarly ptr[1] and ptr[2] for bbb and ccc respectively. ptr[2]() is in effect of writing ccc(), since ptr[2] points to ccc.



85) #include

main()

{

FILE *ptr;

char i;

ptr=fopen("zzz. c","r");

while((i=fgetch( ptr))!=EOF)

printf("%c", i);

}

Answer:

contents of zzz.c followed by an infinite loop

Explanation:

The condition is checked against EOF, it should be checked against NULL.



86) main()

{

int i =0;j=0;

if(i && j++)

printf("%d.. %d",i++,j) ;

printf("%d.. %d,i,j);

}

Answer:

0..0

Explanation:

The value of i is 0. Since this information is enough to determine the truth value of the boolean expression. So the statement following the if statement is not executed. The values of i and j remain unchanged and get printed.



87) main()

{

int i;

i = abc();

printf("%d", i);

}

abc()

{

_AX = 1000;

}

Answer:

1000

Explanation:

Normally the return value from the function is through the information from the accumulator. Here _AH is the pseudo global variable denoting the accumulator. Hence, the value of the accumulator is set 1000 so the function returns value 1000.



88) int i;

main(){

int t;

for ( t=4;scanf("% d",&i)-t;printf( "%d\n",i) )

printf("%d-- ",t--);

}

// If the inputs are 0,1,2,3 find the o/p

Answer:

4--0

3--1

2--2

Explanation:

Let us assume some x= scanf("%d",&i)-t the values during execution

will be,

t i x

4 0 -4

3 1 -2

2 2 0



89) main(){

int a= 0;int b = 20;char x =1;char y =10;

if(a,b,x,y)

printf("hello" );

}

Answer:

hello

Explanation:

The comma operator has associativity from left to right. Only the rightmost value is returned and the other values are evaluated and ignored. Thus the value of last variable y is returned to check in if. Since it is a non zero value if becomes true so, "hello" will be printed..



90) main(){

unsigned int i;

for(i=1;i>-2;i--)

printf("c aptitude");

}

Explanation:

i is an unsigned integer. It is compared with a signed value. Since the both types doesn't match, signed is promoted to unsigned value. The unsigned equivalent of -2 is a huge value so condition becomes false and control comes out of the loop.

Regards,
Ram...




Responses


No responses found. Be the first to respond and make money from revenue sharing program.

Feedbacks      
Popular Tags   What are tags ?   Search Tags  
(No tags found.)

Post Feedback


This is a strictly moderated forum. Only approved messages will appear in the site. Please use 'Spell Check' in Google toolbar before you submit.
You must Sign In to post a response.
Next Resource: C Debugging - Part 7
Previous Resource: C Debugging - Part 9
Return to Discussion Resource Index
Post New Resource
Category: Placement Papers


Post resources and earn money!
 
Related Resources


Contact Us    Privacy Policy    Terms Of Use   

SpiderWorks Technologies Pvt Ltd. 2006 - 2007 All Rights Reserved.