943,337 Members | Top Members by Rank

Ad:
  • C++ Discussion Thread
  • Unsolved
  • Views: 12914
  • C++ RSS
Sep 29th, 2003
0

Return Length of a string?

Expand Post »
Here's my code. I just want to return the length of a string. How do I do that? Any assistance would be greatly appreciated.

C++ Syntax (Toggle Plain Text)
  1. #include "stdafx.h"
  2.  
  3. #using <mscorlib.dll>
  4.  
  5. using namespace System;
  6.  
  7. int _tmain()
  8. {
  9.  
  10. String *strString;
  11. int intLength;
  12.  
  13. Console::Write(S"Enter a String ");
  14. strString = Console::ReadLine();
  15. Console::Write(strString);
  16. intLength = strlen(strString);
  17. Console::Write(intLength);
  18.  
  19. return 0;
  20. }

I run this and get a slew of "Cannot convert..." errors.
Reputation Points: 10
Solved Threads: 0
Newbie Poster
Daywalker46410 is offline Offline
6 posts
since Sep 2003
Sep 30th, 2003
0

Re: Return Length of a string?

Can't you include string.h ? Use stdlib.h sizeof() and then search for '\0' (string end symb). You can make it even simplier by memsetting your string to some char (for example '\n') and then testing for that..
Ilya
P.S.: (You can later convert all the free mem to '\0' so that your print keeps clean)
P.P.S.: If all else fails instead of char symb. use hexidecimals (the true form of special chars)


Quote originally posted by Daywalker46410 ...
Here's my code. I just want to return the length of a string. How do I do that? Any assistance would be greatly appreciated.

#include "stdafx.h"

#using <mscorlib.dll>

using namespace System;

int _tmain()
{

String *strString;
int intLength;

Console::Write(S"Enter a String ");
strString = Console::ReadLine();
Console::Write(strString);
intLength = strlen(strString);
Console::Write(intLength);

return 0;
}

I run this and get a slew of "Cannot convert..." errors.
Reputation Points: 13
Solved Threads: 0
Junior Poster in Training
Valmian is offline Offline
82 posts
since Sep 2003
Sep 30th, 2003
0

Re: Return Length of a string?

Although I must say your problem is strange...
Reputation Points: 13
Solved Threads: 0
Junior Poster in Training
Valmian is offline Offline
82 posts
since Sep 2003
Sep 30th, 2003
0

Re: Return Length of a string?

When I use sizeof(strString) I get an error that says "Cannot apply sizeof to managed type 'System:tring'."
Reputation Points: 10
Solved Threads: 0
Newbie Poster
Daywalker46410 is offline Offline
6 posts
since Sep 2003
Sep 30th, 2003
0

Re: Return Length of a string?

ok..
here is something i didn't test:

C++ Syntax (Toggle Plain Text)
  1. int strings(char *string)
  2. {
  3. int size=0;
  4. for (;string[size]!='\0'; size++)
  5. continue;
  6. return size;
  7. }
Reputation Points: 13
Solved Threads: 0
Junior Poster in Training
Valmian is offline Offline
82 posts
since Sep 2003
Sep 30th, 2003
0

Re: Return Length of a string?

ok.. I tested it and to my suprise (my stuf ususally doesn't work from the first try) it actually worked.. so I hope you won't have problems with it.
Ilyaa
Reputation Points: 13
Solved Threads: 0
Junior Poster in Training
Valmian is offline Offline
82 posts
since Sep 2003
Sep 30th, 2003
0

Re: Return Length of a string?

*ilya
Reputation Points: 13
Solved Threads: 0
Junior Poster in Training
Valmian is offline Offline
82 posts
since Sep 2003
Sep 30th, 2003
0

Re: Return Length of a string?

Your problem might be that strlen returns size_t or smthn so and you are using int.. although I always thought that size_t was made by "typedef size_t int;"
Ilya

Quote originally posted by Daywalker46410 ...
Here's my code. I just want to return the length of a string. How do I do that? Any assistance would be greatly appreciated.

#include "stdafx.h"

#using <mscorlib.dll>

using namespace System;

int _tmain()
{

String *strString;
int intLength;

Console::Write(S"Enter a String ");
strString = Console::ReadLine();
Console::Write(strString);
intLength = strlen(strString);
Console::Write(intLength);

return 0;
}

I run this and get a slew of "Cannot convert..." errors.
Reputation Points: 13
Solved Threads: 0
Junior Poster in Training
Valmian is offline Offline
82 posts
since Sep 2003
Oct 4th, 2003
0

Re: Return Length of a string?

Doesn't look like C++ to me, is it C#?
Bob
Team Colleague
Reputation Points: 15
Solved Threads: 2
Junior Poster
Bob is offline Offline
129 posts
since Feb 2003
Oct 7th, 2003
0

Re: Return Length of a string?

How bout' something like this:

C++ Syntax (Toggle Plain Text)
  1. int length(char *string) {
  2. int blah = 0;
  3. char *pointer = string;
  4. while (*pointer++!=NULL) blah++;
  5. return blah;
  6. }

Theoretically, that should give you the length of a string. Might not work since I thought it up right now.

Quote ...
When I use sizeof(strString) I get an error that says "Cannot apply sizeof to managed type 'System:tring'."
I didn't know there was a system class. I r teh n00b.

Apparently, that class doesn't like you using 'sizeof()' on it, so you're just going to have to manually find it's size.

Quote ...
#using <mscorlib.dll>
You are using C/C++, right? If so, I didn't know you could do that.
Reputation Points: 12
Solved Threads: 0
Newbie Poster
Mike29936 is offline Offline
22 posts
since Sep 2003

This thread is more than three months old

No one has posted to this discussion for at least three months. Please let old threads die and do not reply to them unless you feel you have something new and valuable to contribute that absolutely must be added to make the discussion complete. Otherwise, please start a new thread in this forum instead.
Message:
Previous Thread in C++ Forum Timeline: stuck with definition
Next Thread in C++ Forum Timeline: inheritance





About Us | Contact Us | Advertise | Acceptable Use Policy
Forum Index | Build Custom RSS Feed


Follow us on Twitter


© 2011 DaniWeb® LLC