Avatar billede ahara Nybegynder
20. september 2004 - 11:06 Der er 13 kommentarer og
1 løsning

Bruge funktion som MFC's GetAt i .Net

Hvis jeg f.eks. har en string navn="ahr", hvordan finder jeg så ud af hvad der står på plads 0,1 og 2 i .Net c++? I MFC har jeg tidligere benyttet GetAt, men hvad gør man i .Net?

Tak
AHR
Avatar billede arne_v Ekspert
20. september 2004 - 11:17 #1
Kan du ikke bruge navn[0] navn[1] navn[2] etc. ?
Avatar billede arne_v Ekspert
20. september 2004 - 11:18 #2
Ellers bør du ihvertfald kunne bruge navn.Chars[0] navn.Chars[1] navn.Chars[2]
Avatar billede ahara Nybegynder
20. september 2004 - 11:46 #3
Jeps. Jeg kan bruge chars, men hvis jeg så skal sammensætte to strings. Normalt benytter jeg + operator. Altså string1+string2, men hvad i .Net?

Mvh
AHR
Avatar billede arne_v Ekspert
20. september 2004 - 11:57 #4
Prøv med + også (det kan man bruge i C#).

Ellers skift til StringBuilder i System.Text namespace - den har en Append metode !
Avatar billede ahara Nybegynder
20. september 2004 - 12:00 #5
Virker ikke med +. Har prøvet.

Hvordan skifter jeg til StringBuilder i System.Text namespace og hvad skal jeg så gøre. Håber du gider skære det ud :o)

AHR
Avatar billede arne_v Ekspert
20. september 2004 - 12:04 #6
String a = "xxx";
String b = "yyy";
StrngBuilder c = new StringBuilder(a);
c.Append(b);
String d = c.ToString(),

[ikke testet]
Avatar billede ahara Nybegynder
20. september 2004 - 16:48 #7
Kan se hvad du mener, men har fundet ud af problemet ligger et helt andet sted.

Har følgende variable:

String *test="h";
String testny;
char bogstav='s';

Hvis jeg skal sammenligne disse laver jeg følgende:

testny=bogstav->ToString();

if(testny==test)
bla bla.

Problemet ligger i at koden for at lave en char om til en string giver en talværdi, ved ikke om det er ASCII værdien, men den giver i hvert fald ikke en string.

Tak
AHR
Avatar billede arne_v Ekspert
20. september 2004 - 16:58 #8
Jeg ville nok bruge:

testny = Char::ToString(bogstav);
Avatar billede arne_v Ekspert
20. september 2004 - 16:59 #9
Men jeg kan ikke forstå hvor det tal kommer fra.
Avatar billede ahara Nybegynder
20. september 2004 - 19:54 #10
Du/I får lige hele koden. Har spurgt til lidt af hvert men nedenstående skriver kun 26 a-er ud og ikke hele alfabetet.

Kan du/i hjælpe?

Mvh
AHR

int counter=0;
String *hej;
String *hej1;
int i=0;
char alfabet[]="abcdefghijklmnopqrstuvwxyz";

while(counter<=26)
{
hej1=Char::ToString(alfabet[i]);
hej=String::Concat(hej,hej1);
counter++;
}
caesarText2->Text=hej;
Avatar billede ahara Nybegynder
20. september 2004 - 19:55 #11
LOOOOOOL. Jeg er da en kæmpe nar. Hehe

Problemet er løst haha :o)
Avatar billede arne_v Ekspert
20. september 2004 - 19:55 #12
Ja - du tæller ikke i op inden i løkken
Avatar billede ahara Nybegynder
20. september 2004 - 20:20 #13
Hehe - nemlig. Sender du et svar så jeg kan give point.
Avatar billede arne_v Ekspert
20. september 2004 - 20:22 #14
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

Seneste spørgsmål Seneste aktivitet
42 min siden Problemer med C5 Af dot-tullberg@outlook.dk i Økonomiprogrammer
I dag 12:28 Talkolonne Af hkv i Excel
I går 21:15 Sortering i Stifinder Af 1Dorte i Windows
I går 16:33 Hjælp til tricky VBA-kode Af flras i Excel
18/1114:00 Ny outlook Af Butterfly i Excel