index returns a pointer to the first occurrence of a character in a
string. The first occurrence of the first character in the string will
be the same as a pointer to the string, but with more work.
sprintf(string1, "%c", original[0]);
if (original[0]) // make sure it wasn't an empty string
strcpy(string2, &original[1]); // copy original+1 char to string2
On Wed, 2004-05-12 at 12:00, Jason Gauthier wrote:
> The original poster wanted both saved into separate strings.
>
> Here's an example of what I was implying.
>
> /* it's up to you to define the sizes or malloc them */
> char *original="5678";
> char *string1;
> char *string2;
>
> /* save the first character into another string */
> sprintf(string1, "%c", original[0]);
> /* save the rest into another string */
> strcpy(string2, index(original, original[0]));
>
> Viola!
>
>
> > -----Original Message-----
> > From: Richard Lindsey [mailto:[EMAIL PROTECTED]
> > Sent: Wednesday, May 12, 2004 12:44 PM
> > To: Jason Gauthier; Tristan M; [email protected]
> > Subject: RE: isolating 1 character from a string
> >
> > Doesn't index search for the first occurrence of a particular
> > character in the string? I think what he's looking for is
> > just the left-most character everytime, regardless of what it
> > is, which could be done like this (if you want the rest of
> > the string to go into another variable):
> >
> > char firstchar;
> >
> > if ( argument[0] != '\0' )
> > {
> > firstchar = argument[0];
> > argument++;
> > }
> >
> > that would first check to see if the user didn't enter an
> > argument, and if they did, assign the first letter (or
> > number) of that argument to 'firstchar', and then increment
> > the space pointed to by argument so that if argument == 5678,
> > firstchar would = 5, and argument would then = 678... if you
> > want to use this only for numbers, you can simply add a check
> > for !is_number(argument) before you split off the values, and
> > spit out an error message if the entire string isn't a number
> > (i.e. 5678a)...
> >
> > Richard Lindsey
> >
> > -----Original Message-----
> > From: Jason Gauthier [mailto:[EMAIL PROTECTED]
> > Sent: Wednesday, May 12, 2004 11:12 AM
> > To: Tristan M; [email protected]
> > Subject: RE: isolating 1 character from a string
> >
> > You can do this with index().
> >
> >
> >
> > > -----Original Message-----
> > > From: Tristan M [mailto:[EMAIL PROTECTED]
> > > Sent: Wednesday, May 12, 2004 12:02 PM
> > > To: [email protected]
> > > Subject: isolating 1 character from a string
> > >
> > > Hey, first off thanks for all the help recently, you guys
> > have solved
> > > all my problems ive given you so far:) but heres a new one,
> > >
> > > what id like to do is make the code isolate one character from the
> > > left, like visual basic's left().
> > >
> > > this is what i want:
> > >
> > > i have a value, say 5678
> > > i want to return only the 5 to one string and the 678 to another
> > >
> > > is there any way to do this? ive been searching all over
> > the net with
> > > no luck
> > >
> > > _________________________________________________________________
> > > http://join.msn.com/?pgmarket=en-ca&page=byoa/prem&xAPID=1994&
> > > DI=1034&SU=http://hotmail.com/enca&HL=Market_MSNIS_Taglines
> > >
> > >
> > > --
> > > ROM mailing list
> > > [email protected]
> > > http://www.rom.org/cgi-bin/mailman/listinfo/rom
> > >
> >
> > --
> > ROM mailing list
> > [email protected]
> > http://www.rom.org/cgi-bin/mailman/listinfo/rom
> >