probelm 5:It must be giving runtime error not segmentation fault coz it is
an infinite recursion....

On Mon, Jul 11, 2011 at 1:09 AM, Kamakshii Aggarwal
<[email protected]>wrote:

> for the first question...it will take #ifdef getchar to be '1' only when it
> is defined as a MACRO in your program..if u dont define macro it will not
> take it into consideration even if it is defined in header file.
>
> On Mon, Jul 11, 2011 at 12:38 AM, nicks <[email protected]>wrote:
>
>> Someone please help me in understanding the following output -
>>
>> Problem *1>.*
>> #include<stdio.h>
>> #ifdef getchar         //this expression is evaluated to zero.....why is
>> so happening ??........getchar is defined as macro in stdio.h.....i mean
>> else part shouldn't be executed which is happening
>> #undef getchar
>> #else
>> #define getchar scanf("%c",&ch);
>> #endif
>> main()
>> {
>> char ch;
>>  int c;
>> c=getchar;
>> printf("%d",c);
>> }
>>
>> *OUTPUT-  1*
>> *
>> *
>> *
>> *
>> *2>.*
>> #include<stdio.h>
>> void main()
>> {
>> long x;
>>  float t;
>> scanf("%f",&t);
>> printf("%d\n",t);
>>  x=90;
>> printf("%ld\n",x);
>> {
>>  x=1;
>> printf("%f\n",x);
>> {
>>  x=30;
>> printf("%f\n",x);
>> }
>>  printf("%f\n",x);
>> }
>> x==9;
>>  printf("%f\n",x);
>> }
>>
>> *OUTPUT(INPUT IS 2) -*
>> *2*
>> *0*
>> *90*
>> *2.000000*
>> *2.000000*
>> *2.000000*
>> *2.000000*
>> *
>> *
>> In this problem i failed to Understand why t is printed as 0 (though float
>> is converted to integer by truncation of the fractional part)
>> and how the value of t is transferred to x....looks very strange to me !!
>>
>>
>> *3>.*
>> #include<stdio.h>
>> main()
>> {
>>     printf("\nACM-CIC"+3);
>>     printf(4+"\nACM-CIC");
>>
>> }
>>
>> *OUTPUT -*
>> *M-CIC-CIC*
>> *
>> *
>> What does +3 and +4 doing and does it matter to use them before the format
>> string or after it ??
>>
>> *4>.*
>> #include<stdio.h>
>> main()
>> {
>> long long i=50;
>> i==1000000000000000000000000000000000000000;
>>  printf("i=%d\n\n%lld",sizeof(i),i);
>> //system("pause");
>> }
>>
>> *OUTPUT -*
>> *i=8*
>> *
>> *
>> *50*
>> *
>> *
>> Assigning very large value to i isn't changing it's value.....why is so
>> happening ??
>>
>> and the last one
>>
>> *5>.*
>> #include<stdio.h>
>> main()
>> {
>> static int i=0;
>>  if(i<=-1)
>> printf("\nBull's Eye");
>> else
>>  {
>> main();
>> _exit(1);
>>  }
>> i++;
>> }
>>
>> *OUTPUT -*
>> *segementation fault*
>> *
>> *
>> What's Wrong with the above Code due to which it is giving Runtime
>> error....plz help me pointing it out !!
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Algorithm Geeks" group.
>> To post to this group, send email to [email protected].
>> To unsubscribe from this group, send email to
>> [email protected].
>> For more options, visit this group at
>> http://groups.google.com/group/algogeeks?hl=en.
>>
>
>
>
> --
> Regards,
> Kamakshi
> [email protected]
>



-- 
Regards,
Kamakshi
[email protected]

-- 
You received this message because you are subscribed to the Google Groups 
"Algorithm Geeks" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/algogeeks?hl=en.

Reply via email to