this soln may fail on -ve number
i havenot tried ..
but the basic funda is this ..



On Sun, Sep 13, 2009 at 11:23 AM, ankur aggarwal
<ankur.mast....@gmail.com>wrote:

> size of char is 1 byte but that of int is 4
> If i use int then output for a,b will be a+4*b
>
> in the program the value of ptr is a after the assignment
> address of ptr[c] will be  ptr +c*sizeof(type)
> if the type is char then it equals a+c*1=a+c
>
> value of ptr is stored as a hexadecimal number
> so the use (int)ptr in last line
>
> That is why it outputs the sum
> size of char is 1 byte but that of int is 4
> If i usize of char is 1 byte but that of int is 4
> If i use int then output for a,b will be a+4*b
>
> in the program the value of ptr is a after the assignment
> address of ptr[c] will be  ptr +c*sizeof(type)
> if the type is char then it equals a+c*1=a+c
>
> value of ptr is stored as a hexadecimal number
> so the use (int)ptr in last line
>
> That is why it outputs the sum
> se int then output for a,b will be a+4*b
>
> in the program the value of ptr is a after the assignment
> address of ptr[c] will be  ptr +c*sizeof(type)
> if the type is char then it equals a+c*1=a+c
>
> value of ptr is stored as a hexadecimal number
> so the use (int)ptr in last line
>
> That is why it outputs the sum
>
>       int main() {
>
>>         int a,b;
>>>       cin>>a>>b;
>>>
>>>       char *ptr = (char *) a;
>>>       char *ptr2 = &ptr[b];
>>>       cout<< (int) ptr2 <<endl;
>>>       return 0;
>>>      }
>>>
>>>
>>>
>>>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Algorithm Geeks" group.
To post to this group, send email to algogeeks@googlegroups.com
To unsubscribe from this group, send email to 
algogeeks+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/algogeeks
-~----------~----~----~----~------~----~------~--~---

Reply via email to