Interview Questions

C/C++ Questions only (Memory Allocation)

C++ programming on UNIX, C++ Networking,C++ Algorithm Questions and Answers


(Continued from previous question...)

C/C++ Questions only (Memory Allocation)

1. Why doesn't the code ``char *answer; gets(answer);'' work?

2. I can't get strcat to work. I tried ``char *s3 = strcat(s1, s2);''

but I got strange results.

3. But the man page for strcat says that it takes two char *'s as

arguments. How am I supposed to know to allocate things?

4. I have a function that is supposed to return a string, but when it

returns to its caller, the returned string is garbage.

5. Why am I getting ``warning: assignment of pointer from integer

lacks a cast'' for calls to malloc?

:wq

6. Why does some code carefully cast the values returned by malloc to

the pointer type being allocated?

7. Why does so much code leave out the multiplication by sizeof(char)

when allocating strings?

8. I've heard that some operating systems don't actually allocate

malloc'ed memory until the program tries to use it. Is this legal?

9. I'm allocating a large array for some numeric work, but malloc is

acting strangely.

10. I've got 8 meg of memory in my PC. Why can I only seem to malloc

640K or so?

19 My program is crashing, apparently somewhere down inside malloc.

11. You can't use dynamically-allocated memory after you free it, can

you?

12. Why isn't a pointer null after calling free?

13. When I call malloc to allocate memory for a local pointer, do I

have to explicitly free it?

14. When I free a dynamically-allocated structure containing

pointers, do I have to free each subsidiary pointer first?

15. Must I free allocated memory before the program exits?

16. Why doesn't my program's memory usage go down when I free memory?

17. How does free know how many bytes to free?

18. So can I query the malloc package to find out how big an

allocated block is?

19. Is it legal to pass a null pointer as the first argument to

realloc?

20. What's the difference between calloc and malloc?

21. What is alloca and why is its use discouraged?

(Continued on next question...)

Other Interview Questions