Hi every one I encounter with this error during debugging my program in Keil:
*** error 65: access violation at 0x0FFE443C : no 'write' permission
I am using LPC1768. this area that compiler effort to access is reserved in LPC1768 Memory Map.
My program is using dynamic sized variables and I also changed heap and stack size in
Startup; but there were the same errors
Why this kind of error occurs? Can every one help me?
A float would require 4 bytes. A double - for a compiler that supports the double data type and doesn't downgrade it to a float - would require at least 8 bytes. So an array of 5800 double would be at least 46400 bytes. That's twice your heap size.
Why are you experimenting? The compiler can tell you the required size of the array with the operator sizeof. And malloc() would not return a real pointer value if the heap is too small so the allocation fails. Any call to malloc() or calloc() should verify the returned value.
So how can you not know if the program is able to perform all required heap allocations?
yes, you are right.so, how can i use compiler to tell me required heap size? i don't know what you mean by the last line: So how can you not know if the program is able to perform all required heap allocations?
also what is your opinion about _DATA_GROUP that i mentioned in last post?
thanks.