Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
1. A frequent reader of this site sent this in. No answers, but a nice set of
questions. Consider getting Kernighan and Ritchie title if you find many
things puzzling here.
1. What does static variable mean?
2. What is a pointer?
3. What is a structure?
11. Where does global, static, local, register variables, free memory and C
Program instructions get stored?
14. Describe about storage allocation and scope of global, extern, static,
local and register variables?
15. What are register variables? What are the advantage of using register
variables?
18. Out of fgets() and gets() which function is safe to use and why?
21. Differentiate between a for loop and a while loop? What are it uses?
30. How will you declare an array of three function pointers where each
function receives two ints and
returns a float?
32. What is a NULL Macro? What is the difference between a NULL Pointer
and a NULL Macro?
33. What does the error ‘Null Pointer Assignment’ mean and what causes
this error?
34. What is near, far and huge pointers? How many bytes are occupied by
them?
35. How would you obtain segment and offset addresses from a far
address of a memory location?
36. Are the expressions arr and *arr same for an array of integers?
37. Does mentioning the array name gives the base address in all the
contexts?
41. How can we check whether the contents of two structure variables are
same or not?
45. What do the ‘c’ and ‘v’ in argc and argv stand for?
46. Are the variables argc and argv are local to main?
49. Does there exist any way to make the command line arguments
available to other functions without passing them as arguments to the
function?
50. What are bit fields? What is the use of bit fields in a Structure
declaration?
52. Which bit wise operator is suitable for checking whether a particular bit
is on or off?
53. Which bit wise operator is suitable for turning off a particular bit in a
number?
54. Which bit wise operator is suitable for putting on a particular bit in a
number?
55. Which bit wise operator is suitable for checking whether a particular bit
is on or off?
57. Write a program to compare two strings without using the strcmp()
function.
60. Write programs for String Reversal. The same for Palindrome check.
65. Write a program which uses functions like strcmp(), strcpy(), etc.
68. How can you increase the size of a dynamically allocated array?
69. How can you increase the size of a statically allocated array?
70. When reallocating memory if any other pointers point into the same
piece of memory do you have to readjust these other pointers or do
they get readjusted automatically?
72. How much maximum can you allocate in a single call to malloc()?
74. What is object file? How can you access object file?
75. Which header file should you include if you are to develop a function
which can accept variable number of arguments?
77. How can a called function determine the number of arguments that
have been passed to it?
82. How would you use qsort() function to sort an array of structures?
83. How would you use qsort() function to sort the name stored in an
array of pointers to string?
84. How would you use bsearch() function to search a name stored in
array of pointers to string?
85. How would you use the functions sin(), pow(), sqrt()?
86. How would you use the functions memcpy(), memset(), memmove()?
87. How would you use the functions fseek(), freed(), fwrite() and ftell()?
88. How would you obtain the current time and difference between two
times?
89. How would you use the functions randomize() and random()?
90. How would you implement a substr() function that extracts a sub
string from a given string?
94. Can you use the function fprintf() to display the output on the screen?
95. Gautam Pagedar adds this question: What is a linklist and why do we
use it when we have arrays? - I feel the correct answer should be
linklist is used in cases where you don’t know the memory required to
store a data structure and need to allocate is dynamically on demand.
97. Sunil asks: What is the difference between main() in C and main() in
C++?
98. ajz at his interviews asks what will be printed out when the following
code is executed:
main()
{
printf("%x",-1<<4);
}
1. What is C language ?
2. What does static variable mean?
3. What are the different storage classes in C ?
4. What is hashing ?
5. Can static variables be declared in a header file ?
6. Can a variable be both constant and volatile ?
7. Can include files be nested?
8. What is a null pointer ?
9. What is the output of printf("%d") ?
10. What is the difference between calloc() and malloc() ?
11. What is the difference between printf() and sprintf() ?
12. How to reduce a final size of executable ?
13. Can you tell me how to check whether a linked list is circular ?
14. Advantages of a macro over a function ?
15. What is the difference between strings and character arrays ?
16. Write down the equivalent pointer expression for referring
the same element a[i][j][k][l] ?
17. Which bit wise operator is suitable for checking whether a
particular bit is on or off ?
18. Which bit wise operator is suitable for turning off a particular
bit in a number ?
19. Which bit wise operator is suitable for putting on a particular
bit in a number ?
20. Does there exist any other function which can be used to
convert an integer or a float to a string ?
21. Why does malloc(0) return valid memory address ? What's the
use ?
22. Difference between const char* p and char const* p
23. What is the result of using Option Explicit ?
24. What is the benefit of using an enum rather than a #define
constant ?
25. What is the quickest sorting method to use ?
26. When should the volatile modifier be used ?
27. When should the register modifier be used? Does it really help
?
28. How can you determine the size of an allocated portion of
memory ?
29. What is page thrashing ?
30. When does the compiler not implicitly generate the address of
the first element of an array ?
31. What is the benefit of using #define to declare a constant ?
32. How can I search for data in a linked list ?
33. Why should we assign NULL to the elements (pointer) after
freeing them ?
34. What is a null pointer assignment error ? What are bus errors,
memory faults, and core dumps ?
35. When should a type cast be used ?
36. What is the difference between a string copy (strcpy) and a
memory copy (memcpy)? When should each be used?
37. How can I convert a string to a number ?
38. How can I convert a number to a string ?
39. Is it possible to execute code even after the program exits the
main() function?
40. What is the stack ?
41. How do you print an address ?
42. Can a file other than a .h file be included with #include ?
43. What is Preprocessor ?
44. How can you restore a redirected standard stream ?
45. What is the purpose of realloc( ) ?
46. What is the heap ?
47. How do you use a pointer to a function ?
48. What is the purpose of main( ) function ?
49. Why n++ executes faster than n+1 ?
50. What will the preprocessor do for a program ?
51. What is the benefit of using const for declaring constants ?
52. What is the easiest sorting method to use ?
53. Is it better to use a macro or a function ?
54. What are the standard predefined macros ?