0
Will the following code compile?If yes, then is there any other problem withthis code?
#include<stdio.h> void main(void) { char *ptr = (char*)malloc(10); if(NULL == ptr) { printf("\n Malloc failed \n"); return; } else { // Do some processing free(ptr); } return;
2 Answers
+ 1
No, it give you a good amount of error messages. Use, now a days int main() is used in c as well as c++. This is standard, you can search on google. Anyway
#include <stdio.h>
#include <stdlib.h>
int main()
{
char *ptr = (char*)malloc(10);
if(ptr==NULL)
{
printf("\n Malloc failed \n");
return 0;
}
else {
// Do some processing
free(ptr);
}
return 0;
}
Also There is no output in your program. if ptr is not null. And I want to add something. use
if(!ptr) it us equivalent to if(ptr==NULL)
+ 1
There wil be a warning not error...
That we should use int return type instead of void..
And i appreciate your answer
.. Thank you.