what is callback function in c?

a callback is executable code that is passed as an argument to other code. It allows a lower-level software layer to call a function defined in a higher-level layer.

with the use of call back The caller and callee are decoupled.

The caller doesn’t know who the callee is; all it knows is that there is a callee with a certain prototype and probably some restriction.

This would be useful during the creation of libraries where
in you do not want the logic to be embedded in the library.