|
|
|
 |

April 5th, 2004, 09:50 PM
|
 |
Second Lieutenant
|
|
Join Date: Nov 2003
Posts: 482
Thanks: 1
Thanked 0 Times in 0 Posts
|
|
Re: Coding Inquiry
I'm not sure if this will help or not, but I seem to remember needing to use the chop() function on strings.
(hmmm...can't seem to remember if this was a C++, or a Perl thing?)
[ April 05, 2004, 20:51: Message edited by: Cipher7071 ]
__________________
The great tragedy of science...the slaying of a beautiful hypothesis by an ugly fact. (T. H. Huxley)
|

April 5th, 2004, 09:51 PM
|
 |
General
|
|
Join Date: Apr 2001
Location: Cincinnati, Ohio, USA
Posts: 4,547
Thanks: 1
Thanked 7 Times in 5 Posts
|
|
Re: Coding Inquiry
You do know that all strings in C have to end with a null terminator, don't you?
Wouldn't it be better to use a string class that's available in many a C++ library? 
__________________
The Ed draws near! What dost thou deaux?
|

April 5th, 2004, 09:59 PM
|
 |
Shrapnel Fanatic
|
|
Join Date: Jul 2001
Location: Southern CA, USA
Posts: 18,394
Thanks: 0
Thanked 12 Times in 10 Posts
|
|
Re: Coding Inquiry
You miss the point... ofstream objects DO NOT ACCEPT strings. You have to use arrays of characters... this is where the problem lays, in trying to get an appropriate array of characters that are exactly the same as the string from which you are building it...
|

April 5th, 2004, 10:04 PM
|
 |
Lieutenant Colonel
|
|
Join Date: Mar 2001
Location: Emeryville, CA
Posts: 1,412
Thanks: 0
Thanked 0 Times in 0 Posts
|
|
Re: Coding Inquiry
Ummm... Fyron, I think you need to be introduced to the wonders of c_str().
code:
#include <string>
#include <fstream>
...
string aString;
...
ofstream outFile(aString.c_str()):
...
The c_str() method of string returns a pointer to a null-terminated array of char. Which is what the fstream classes take in their constructors.
__________________
GEEK CODE V.3.12: GCS/E d-- s: a-- C++ US+ P+ L++ E--- W+++ N+ !o? K- w-- !O M++ V? PS+ PE Y+ PGP t- 5++ X R !tv-- b+++ DI++ D+ G+ e+++ h !r*-- y?
SE4 CODE: A-- Se+++* GdY $?/++ Fr! C++* Css Sf Ai Au- M+ MpN S Ss- RV Pw- Fq-- Nd Rp+ G- Mm++ Bb@ Tcp- L+
|

April 5th, 2004, 10:06 PM
|
 |
Second Lieutenant
|
|
Join Date: Nov 2003
Posts: 482
Thanks: 1
Thanked 0 Times in 0 Posts
|
|
Re: Coding Inquiry
I guess I don't quite understand the distinction. Or have I been using too much Pascal?
__________________
The great tragedy of science...the slaying of a beautiful hypothesis by an ugly fact. (T. H. Huxley)
|

April 5th, 2004, 10:17 PM
|
 |
Lieutenant Colonel
|
|
Join Date: Mar 2001
Location: Emeryville, CA
Posts: 1,412
Thanks: 0
Thanked 0 Times in 0 Posts
|
|
Re: Coding Inquiry
IIRC, chop() is a perl function.
The confusion arises in C/C++ with strings because the name "string" is often used interchangably for the C++ class string, and the "C-style" pointer to an array of characters. And there is quite a bit of difference between an object and a char*
AFAIK, internally, the C++ class string really is just a sort of character array, only with seperate classes for characters to deal with unicode and all that. I remember the first time I saw what "string" actually represents in the debugger, something like three nested templated classes... I was confused for about 10 minutes as to why the function it said was behaving badly was taking that monster as an argument instead of the innocent "string" type I had it taking. But, for most people, as long as you know those functions, you can leave all the nasty bits (such as converting the object to an array of dynamically allocated characters) to the class, and go on your merry way 
__________________
GEEK CODE V.3.12: GCS/E d-- s: a-- C++ US+ P+ L++ E--- W+++ N+ !o? K- w-- !O M++ V? PS+ PE Y+ PGP t- 5++ X R !tv-- b+++ DI++ D+ G+ e+++ h !r*-- y?
SE4 CODE: A-- Se+++* GdY $?/++ Fr! C++* Css Sf Ai Au- M+ MpN S Ss- RV Pw- Fq-- Nd Rp+ G- Mm++ Bb@ Tcp- L+
|

April 6th, 2004, 03:07 AM
|
 |
General
|
|
Join Date: Apr 2001
Location: Cincinnati, Ohio, USA
Posts: 4,547
Thanks: 1
Thanked 7 Times in 5 Posts
|
|
Re: Coding Inquiry
Or use C#, where string is a predefined data type 
__________________
The Ed draws near! What dost thou deaux?
|
Thread Tools |
|
Display Modes |
Hybrid Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is On
|
|
|
|
|