Hello, I’m looking for a good place for learning C, preferably off proprietary platforms like Youtube or bloated sites filled with trackers and scripts. If you know websites, videos, ebooks (any type of content basically) regarding C, don’t hesitate linking them below. I’d be really grateful, as I’m trying to find my way in the world of programming :)

EDIT: sorry for all the deleted comments, those were duplicates lemmur made accidentally of my original comments.

  • @peppermint@lemmy.ml
    link
    fedilink
    43 years ago

    I’m by no means professional. If you know any other programming language, in C the only data structure you have is a fixed size array (addressed by a pointer), and you need to reinvent your own methods around common problems. Go over to tutorialspoint or github:awesome-c to learn the 20 or so keywords it has and then try to implement something like a vector dot-product, string concatenation, a CSV parser or something similar by example. If you are unfamiliar with what a pointer is, then you need to get used to the concept before you can really make use of C’s minimalistic grammar. For that, maybe github:awesome-c will help with links to tutorials.

    • lemmitOP
      link
      fedilink
      53 years ago

      unfortunately, i don’t understand anything of what you said. i never programmed before, and because i heard c is the base of many other languages i thought it might be a good idea trying to learn it first, before moving to more complex languages.

      • @gun@lemmy.ml
        link
        fedilink
        23 years ago

        I think you are misguided in assuming that because most other languages are based off of C, they are more complex. It’s the opposite. Modern programming languages abstract away a lot of the tasks that you would have to do manually in C.

        For example, in C you have to keep track of memory yourself. This can lead to all sorts of funny problems where you forget to release memory, so your program starts taking up more and more memory forever. Or in other cases, you DO release memory, but you have an address to that memory that you forget to do something about. So you can start reading random data, or your program could crash because you start messing with computer memory in places you aren’t supposed to.
        For example, one time, Windows detected my C program as a virus and deleted it when I ran it. It was because my code had a bug that would have replaced every byte of memory with the letter ‘a.’

        You can learn a lot about computers by writing C, but if you’re just starting out, my advice is that you learn python. Or, you could go on Khan Avademy and look at their coding tutorials, that’s how I got started.

      • @peppermint@lemmy.ml
        link
        fedilink
        13 years ago

        Sorry, I did not realize. In that case, have a scroll through the awesome-c page that was posted under my comment, maybe there’s something just for you.

      • @peppermint@lemmy.ml
        link
        fedilink
        13 years ago

        I suppose there’s more than one, but together they will have plenty of tutorials :) thanks for helping to choose one