![]() |
Memory corruption?
Hi,
Consider ,the following code unsigned int num =10; unsigned int * ptr = # however,When i look into ptr ,the address stored in "ptr" IS NOT EQUAL to the ADDRESS of num.. I know this seems to be strange,but this is what I have obsreved.. Is this any kind of memory corruption or some known issue wich I may not be aware of? |
Re: Memory corruption?
Hi
You have got it wrong. The following program below should show it. ++++++++++++++++++++++++++++++++++++++++++++++ Code:
#include<stdio.h> |
Re: Memory corruption?
Quote:
|
Re: Memory corruption?
Are you looking at (a) the address of ptr, (b) ptr itself, or (c) what ptr is pointing at? If (b) then it should be exactly equal and if it isn't, your compiler is critically broken and you need a new one. But given the question you are asking, I suspect you're a beginner and the difference is actually down to a or c.
|
Re: Memory corruption?
hi,
i know this sounds strange.. but I am looking at b) ptr itself... |
Re: Memory corruption?
Can you please share your code? If we can have a look at your code, we would be able to understand your problem better.
|
Re: Memory corruption?
You'll have to share your code. Also let us know what version of what compiler, and what version of what operating system, you're using. This code proves ptr should equal &num:
Code:
void test44()10 10 1af79c 1af79c So upload a short demo like the one here that shows the problem and include the output showing the different values of &num and ptr. Because ptr should be exactly equal to &num, and if it isn't then as I said before, either your compiler is terminally broken and you should never use it again, or you are looking at the wrong thing. >>"When i look into ptr" How exactly? Are you using a debugger? |
| All times are GMT +5.5. The time now is 05:43. |