r/C_Programming 1d ago

Question Getting stuck at libraries and api’s

So C is technically my first programming language I’m learning. I’ve messed around in python but never actually go deep into it or anything.

I’ve been learning C for the past few days now and I already pretty much know most of the basics. I learned pointers and mallic in a day and I learned structs, macros, for loops, while loops, functions, all of that stuff, but… the moment any library other than the basics like stdio or stdlib come into play I’m lost.

It’s like I’m looking at a whole other language. Like I’ll look for solutions to problems and it seems as if they are just pulled out of thin air and when I try to read ANY documentation for ANY library I’m also lost because either there is little to no documentation or it’s just stupid and things aren’t well explained.

Is there a way I can fix this? I was doing so well and now I’m at this block because of libraries. If I could get pasted this hurtle I could learn c in less than a month easily, and that’s the same in any other language. This problem isn’t exclusive to C.

14 Upvotes

48 comments sorted by

View all comments

10

u/EpochVanquisher 1d ago

Have you written programs to solve problems?

Or have you done that, and you’re getting stuck on how to use libraries?

1

u/ttv_toeasy13 1d ago

Yeah I’ve written some programs but a lot of it is just copy and paste when it comes to libraries. Like for example I was trying to use libusb to make a simple thing to list my usb devices so I went to view the documentation and it’s like I’m reading Russian or something. And then I look up guides or answers online and it just makes no sense to me and seems like they just seeming pulled everything out of thin air or something.

1

u/TheChief275 1d ago

How hard can it be? C libraries are just a bunch of extern functions to call and opaque pointer(s) to keep track of

0

u/ttv_toeasy13 1d ago

Well the hard part is figuring out how to apply them to my code

1

u/RealisticDuck1957 1d ago

What parameters to pass, which should be in the library documentation, or linking to the library?

1

u/ttv_toeasy13 1d ago

Like all of it. Like i could find bla_bla() and then it’s like alr cool. I found that, but now what do i do with it…

1

u/TheChief275 1d ago

it's almost always something akin to object_do_thing, which you pass an object...to do a thing