Re: C coding
Tim Bronski <[email protected]>
| Newsgroups | gmane.comp.lang.as400.c |
|---|---|
| Message-ID | <[email protected]> |
Yes, but the statement was the attempt to create a c++ string from a parameter passed from....an RPG program! On 2/13/2014 6:36 PM, Marc Hunter wrote: > While I empathize, and certainly C++ also allows you to shoot yourself > in the foot, the code shown is philosophically (imo) a mix of C and C++ > in that it uses char *s. Assuming both variables are strings then I > would code it as follows and avoid dipping into 'dangerous' char * > territory. > > partName.insert(0, userName.substr(start, len)); > > (If I'm understanding the objective correctly) > > Marc > > On 2/13/2014 9:02 AM, Tim Bronski wrote: >> On 2/13/2014 5:23 PM, Jon Paris wrote: >>> I would have said that C was brilliant if your aim was to shoot yourself in the foot and C++ does a better job of protecting you. >> Hi Jon, I would have let that slide but I've just finished tracking down >> a bug where c++ was using a different overloaded string function than >> the one intended. Here's what the statement should have been: >> partName.insert(0, &userName[start], len); >> but instead it was >> partName.insert(0, userName[start], len); >> >> This compiles fine but the result was heinous...the c compiler would >> have caught that one. -- Need secure FTP? Download your native sFTP solution here: www.arpeggiosoftware.com -- This is the Bare Metal Programming IBM i (AS/400 and iSeries) (C400-L) mailing list To post a message email: C400-L-Zwy7GipZuJhWk0Htik3J/[email protected] To subscribe, unsubscribe, or change list options, visit: http://lists.midrange.com/mailman/listinfo/c400-l or email: C400-L-request-Zwy7GipZuJhWk0Htik3J/[email protected] Before posting, please take a moment to review the archives at http://archive.midrange.com/c400-l.