I am using Dev C++ for my C projects. I was asking few questions on Stackoverflow about my code and some answers suggests that I am using "old" function (in my case gets()) which is not supported anymore by C Standard. So my question is how do I know which C Standard am I using and on what it depends? If it is built in compiler ,what would be most practical compiler to use which is up to date?


There are multiple ways to do this and it depends on what compiler you're using. Let's assume you're on linux and using gcc. Run:

gcc -dM -E - < /dev/null

It will print out all compiler defined macros. Look for #define __STDC_VERSION__ 201112L

Not the answer you're looking for? Browse other questions tagged or ask your own question.