5 ms·
http://cdecl.org/ http://cdecl.org/
by malkia 14y ago
http://cdecl.org/ http://cdecl.org/
- binarycrusader 14y agoCool, but it doesn't handle the last example: void (*signal(int, void (*fp)(int)))(int) ...claims there's a syntax error, and there might be, but I don't know off-hand.
- cnvogel 14y agoIt's confused by the parameter name fp. cdecl> explain void (*signal(int, void (*)(int)))(int) ; declare signal as function (int, pointer to function (int) returning void) returning pointer to function (int) returning void
- malkia 14y agoThis works: void (*signal(int, void (*)(int)))(int)
- deleted 14y ago[deleted]
- stephencanon 14y agocdecl is a great resource, though I do wish that it knew about the restrict keyword.
- caf 14y agoIt misspells it "noalias".
- tantalor 14y agoIt says "C gibberish ↔ English", but does it really support English to C?
- stephencanon 14y agoYes, for some definition of "English": http://cdecl.ridiculousfish.com/?q=declare+bar+as+volatile+pointer+to+array+64+of+const+int http://cdecl.ridiculousfish.com/?q=declare+bar+as+volatile+p...
- hobbyist 14y agothere is a cdecl package in all linux distributions, which can be used inside terminal to expand such C declrations. It was really helpful when I started C programming.
- rwmj 14y agoUnfortunately the license is not clearly free. This was why we had to drop it from Fedora. I have tried to contact the original authors, and have got clarifications from all of them except Graham Ross. So if anyone here knows how to get hold of him, please let me know! (rjones at redhat dot com)