C
Programming
Interview Questions
1. What does static variable mean?
2. What is a pointer?
3. What are the uses of a pointer?
4. What is a structure?
5. What is a union?
6. What are the differences between structures
and union?
7. What are the differences between structures
and arrays?
8. In header files whether functions are
declared or defined?
9. What are the differences between malloc ()
and calloc ()?
10. What are macros? What are its advantages and
disadvantages?
11. Difference between pass by reference and
pass by value
12. What is static identifier?
13. Where is the auto variables stored?
14. Where does global, static, and local,
register
15. Difference between arrays and linked list?
16. What are enumerations?
17. Describe about storage allocation and scope
of
18. What are register variables? What are the
advantages
19. What is the use of typedef?
20. Can we specify variable field width in a
scanf()
21. Out of fgets() and gets() which function is
safe to use and why?
22. Difference between strdup() and strcpy()?
23. What is recursion?
24. Differentiate between a for loop and a while
loop? What are it uses?
25. What is storage class.What are the different
storage classes in C?
26. What the advantages of using Unions?
27. What is the difference between Strings and
Arrays?
28. What is a far pointer? where we use it?
29. What is a huge pointer?
30. What is a normalized pointer ,how do we
normalize a pointer?
31. What is near pointer.
32. In C, why is the void pointer useful? When
would you use it?
33. What is a NULL Pointer? Whether it is same
as an uninitialized pointer?
34. Are pointers integer ?
35. What does the error ‘Null Pointer
Assignment’ means and what causes this error?
36. What is generic pointer in C?
37. Are the expressions arr and &arr same
for an array of integers?
38. How pointer variables are initialized ?
39. What is static memory allocation ?
40. What is dynamic memory allocation?
41. What is the purpose of realloc ?
42. What is pointer to a pointer.
43. What is an array of pointers ?
44. Difference between linker and linkage ?
45. Is it possible to have negative index in an
array?
46. Why is it necessary to give the size of an
array in an array declaration ?
47. What modular programming ?
48. What is a function ?
49. What is an argument ?
50. What are built in functions ?
51. Difference between formal argument and
actual argument ?
52. Is it possible to have more than one main()
function in a C program ?
53. What is the difference between an enumeration
and a set of pre-processor # defines?
54. How are Structure passing and returning
implemented by the complier?
55. What is the similarity between a Structure,
Union and enumeration?
56. Can a Structure contain a Pointer to itself?
57. How can we read/write Structures from/to
data files?
58. Write a program which employs Recursion ?
59. Write a program which uses Command Line
Arguments?
60. Difference between array and pointer ?
61. What do the ‘c’ and ‘v’ in argc and argv
stand for?
62. What are C tokens ?
63. What are C identifiers?
64. Difference between syntax vs logical error?
65. What is preincrement and post increment ?
66. Write a program to interchange 2 variables
without using the third one.
67. What is the maximum combined length of
command line arguments including the space between adjacent arguments?
68. What are bit fields? What is the use of bit
fields in a Structure declaration?
69. What is a preprocessor, What are the
advantages of preprocessor ?
70. What are the facilities provided by preprocessor
?
71. What are the two forms of #include directive
?
72. How would you use the functions randomize()
and random()?
73. What do the functions atoi(), itoa() and
gcvt() do?
74. How would you use the functions fseek(),
freed(), fwrite() and ftell()?
75. What is the difference between the functions
memmove() and memcpy()?
76. What is a file ?
77. What are the types of file?
78. What is a stream ?
79. What is meant by file opening ?
81. What is a file pointer ?
82. How is fopen()used ?
83. How is a file closed ?
84. What is a random access file ?
85. What is the purpose of ftell ?
86. What is the purpose of rewind() ?
87. Difference between a array name and a
pointer variable ?
88. Represent a two-dimensional array using
pointer ?
89. Difference between an array of pointers and
a pointer to an array ?
90. Can we use any name in place of argv and
argc as command line arguments ?
91. What are the pointer declarations used in C?
92. Differentiate between a constant pointer and
pointer to a constant ?
93. Is the allocated space within a function
automatically deallocated when the function returns?
94. Discuss on pointer arithmetic?
95. What are the invalid pointer arithmetic ?
96. What are the advantages of using array of
pointers to string instead of an array of strings?
97. Are the expressions *ptr ++ and ++ *ptr same
?
98. What would be the equivalent pointer
expression foe referring the same element as a[p][q][r][s] ?
99. Are the variables argc and argv are always
local to main ?
100. Can main () be called recursively?
101. Can we initialize unions?
102. What’s the difference between these two
declarations?
103. Why doesn’t this code: a[i] = i++; work?
104. Why doesn’t struct x { … };x thestruct;
work?
105. Why can’t we compare structures?
106. How are structure passing and returning
implemented?
