**TwN** skrev:
> Hej gruppe,
> Jeg starter lige med at sige, at jeg er rimelig meget nybegynder til C++...!
> Dette spørgsmål drejer sig om "string compare"...
> Jeg så på et tidspunkt, at man ikke kan sammenligne en 'char[]' tekststreng,
> hvilket jeg nu har brug for... :-/
> man skulle istedet bruge 'string compare'(hvordan er det den skrives?).
> Nu har jeg så leget lidt med det, men kan ikke helt finde ud af hvordan den
> bruges...
> er der ikke nogle der kan "skære det ud i pap" ? (et eksempel...)
I C ville man bruge funktionen strcmp (#include string.h) og derved lave
noget i retning af:
#include <string.h>
#include <stdio.h>
int main(void)
{
char in[36], *s;
printf("Enter a string: ");
fflush(stdout);
fgets(in, sizeof(in), stdin); /* Read a line from the user */
if((s = strchr(in, '\n')) != NULL)
*s = '\0';
if(strcmp(in, "xxx") == 0)
printf("The input string was xxx\n");
else if(strcmp(in, "yyy") == 0)
printf("The input string was yyy\n");
else
printf("The input string was something else\n");
return 0;
}
I C++ ville man kunne bruge std::string som man kan sammenligne med direkte:
#include <string>
#include <iostream>
int main(void)
{
std::string in;
std::cout << "Enter a string: ";
std::cin >> in;
if(in == "xxx")
std::cout << "The input string was xxx\n";
else if(in == "yyy")
std::cout << "The input string was yyy\n";
else
std::cout << "The input string was something else\n";
return 0;
}
> Jeg skal bruge det til, hvis fil navnet er 'xxxx' skal programmet selv
> indsætte tekstsrengen 'xxxxxxx' i slutningen af filen, og hvis filnavnet er
> 'yyyy', skal programmet selv indsætte tekststrengen 'yyyyyyy' i slutningen
> af filen.
>
> dvs. den sidste linje i filen skal ikke kunne redigeres, men hvis jeg
> undlader at skrive det, kommer det ikke med... så overskriver programmet
> bare filen, uden sidste linje... :-/
>
Den forstod jeg ikke.
/b
--
Bertel Brander, author of Wain, a free text editor for programmers:
http://home20.inet.tele.dk/midgaard/program.htm