3 ms·
Of course, but everyone wants to overdo the complexity of the time worn solution. OMG you need to null terminate the string after all the _other_ gymnastics..ge
by needlepont 8y ago
Of course, but everyone wants to overdo the complexity of the time worn solution. OMG you need to null terminate the string after all the _other_ gymnastics..gee C sure does suck! Why don't we use rust|go|c++ ad-nauseam.
bzero(buf,sz); /memset nazis here/
strncpy(buf,src,sz - 1);
- bitwize 8y agoIt doesn't make sense to have to null-terminate the string by hand (maybe) after doing a "safe" STRING copy. Which means it's easy to forget to do and that's a dangerous wart in the design. Really, stop using C. To quote Hayao Miyazaki, C was a mistake.
- needlepont 8y agoTeach your grandmother to suck eggs and resign the thought police please.
- dang 8y agoPosting like this will get you banned here. Please review and follow the rules: https://news.ycombinator.com/newsguidelines.html https://news.ycombinator.com/newsguidelines.html.
- hzhou321 8y agoWhat I meant is more like: #define BUFSIZE 100 char buf[BUFSIZE+1] buf[BUFSIZE]=0 // for global var, it is already zeroed, right? Then one can call strncpy(buf, BUFSIZE, ...) without worrying about null-termination.