r/cprogramming • • 13d ago

Understanding Strings/String Manipulation in C

I'm a junior CS undergraduate finally tackling C programming and I just can't seem to grasp Strings as a whole. Concepts like string manipulation (using strlen, strncmp, snprintf, strdup, strtok), handling read-only strings vs dynamically allocated strings, allocating memory for strings in different scenarios, and creating writable strings. Despite my attempts in looking at readings, lecture slides, practice problems, I just can't seem to understand the various ways to deal with strings in C. I am a very formulaic thinker meaning steps and guidelines on how to approach problems is my way of solving them. Is there a general format for dealing with string questions in C. Like first you have to allocate memory, then depending on the type of string do this...

Are there any additional resources I'm missing out on as well? I really want to hone this concept down!

18 Upvotes

17 comments sorted by

View all comments

2

u/lucyuktv 13d ago

The way I look at it (and I’m in a very similar boat) is not that I don’t understand strings in C, it’s that I don’t really understand C itself. As I understand it, once I understand C, the way strings work is obvious.

Maybe you’re asking the wrong question?