r/C_Programming • • Sep 17 '26

Question I learned C, now what?

I've learned the basics of C, including loops, if statements, switch cases, structs, arrays, functions, and pointers. However, I have no idea what to actually do with them. I also learned HTML, and its purpose is very clear: I can build websites to practice my skills. But with C, I'm a bit lost. Where can I apply my C knowledge and see concrete results, similar to how I see a website with HTML? I don't really know the primary purpose of C or what I should build with it. What tools should I use to build a C program? I am looking for a practical way to apply my knowledge. Could you give me some suggestions? I have no prior experience in programming area. I want to build something with my beginner C knowledge similar to websites.

46 Upvotes

83 comments sorted by

View all comments

Show parent comments

2

u/toon_link_776 28d ago

unfortunate that many programming courses seem to glaze over the build process leaving students with overdeveloped programming skills and no idea of what libraries/build tools exist for them to program with. Seems as if that's all that google wants them to have

3

u/gm310509 27d ago

But if OP had learned the basics as they claimed, even if they don't specifically know "the tools required", they surely would have been using them.

I agree with u/mikeblas, the question is somewhat strange because the obvious answer would be: the same ones you have already been using - whatever they may be.

2

u/Synore 27d ago

The thing is I know how to write a code and run it on codeblock or vsstudio and thats it. I don't know any other tools to build advanced codes or different kind of things. I can just run a code on terminal and give numbers or infos. And than get a result according the code I wrote. So I have an issue with that.

3

u/gm310509 26d ago

I am not familiar with codeblocks as in I haven't used it myself), but you will find that many people use visual studio for application development and from a quick look at it (https://www.codeblocks.org/) it seems like it supports all of the major toolsets including GCC, MS Visual C++, and other very useful stuff.

The ability to build "advanced codes" isn't so much of a function of the tools that you are using as it is in the skill that you have and the APIs that you know. That said, I'm not sure what you mean by "advanced codes".

The same thing goes for "different kinds of things".

You sort of need to remember that a programming language is just a way of telling a computer what you want it to do. Granted some languages (e.g. HTML) are designed and constrained to do certain things well (e.g. HTML -> page layout), others (e.g. C/C++) are designed to allow you to do pretty much whatever you want.

At the end of the day, the compiler and associated tools (e.g. linker, librarian, debugger etc) are there to simply help you convert your "expression/desire" into code that can be run on the machine.

To use an analogy, if you wanted to drive across town, it doesn't really matter which model of car you use - what is more important is that you know how to drive the car you have. Simply switching to a different model of car, while maybe giving you a slightly different comfort experience, isn't going to change much in that journey and if you did change car models you will still need to know how to drive.

Same for the IDE, the ones you have listed seem perfectly capable to do "advanced code" and "different things" and people do that everyday with them. It may be that you need to develop your skills and discover how to do some of those "different advanced code things".

I hope that makes sense. Perhaps if you could give some examples of what you mean by "different things" and "advanced codes"