Matlab Itself Can do it it requires Borland C++ or Microsoft Visual C++
Also I think it cannot convert the internal functions like fft,ifft to their C/C++ code
so you have to write your own functions for that also
You do not have to write your own fft/ifft functions. They already exist. Some of the funcions are precompiled in dll-s, therefore you just have to copy them together with your application.
Matlab by itself comes with a C cross-compiler. Eventhough it gives you good C code, if you are going to implement it in DSP, its efficiency is going to come down. Its better to stick to the library given by manufacturer.