Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


ta varje bokstav tills enter trycks ner och lagra allt i en char?

Postades av 2004-05-22 10:19:28 - Ted Johansson, i forum c++, Tråden har 7 Kommentarer och lästs av 791 personer

Hej ja frågan tyder som rubriken jag lyckas inte riktigt få ihop det jag har följande kod:

i=-1;
cout << "Please enter a password (MAX 100 characters): ";
do
{
i++;
pass[i]=getch();
gotoxy(48+i,2);
cout << "*";
tecken=pass[i];
}while(tecken!=13);

jag har testat lite olika varianter på koden men med samma resultat. Det verkar som att alla bokstäver utom just enter kommer med eller det kanske den gör men det blir alltid ett fyrkantigt tecken i filen man skriver till efter själva texten man skrivit in innan man tryckt enter.

vad kan detta bero på? jag ahr försökt lägga till ett \0 men det har inte blivit bättre

tack på förhand

mvh
ted


Svara

Sv: ta varje bokstav tills enter trycks ner och lagra allt i en char?

Postades av 2004-05-22 12:15:26 - Peter Larsson

>vad kan detta bero på? jag ahr försökt lägga till ett \0 men det har inte blivit bättre
Det beror på att det sista tecknet som läggs in i strängen är enter. Du måste ha lagt '\0' på fel ställe, förmodligen efter enter.

Skriv detta efter loopen så får du bort enter tecknet:
pass[i]='\0';

/Peter


Svara

Sv: ta varje bokstav tills enter trycks ner och lagra allt i en char?

Postades av 2004-05-22 12:55:23 - Ted Johansson

det är just det som jag har testat

men det hjälper inte


Svara

Sv: ta varje bokstav tills enter trycks ner och lagra allt i en char?

Postades av 2004-05-22 13:43:57 - Peter Larsson

Då är det nog inte det som är felet. Det skulle underlätta om du postade koden som skriver till filen också.

/Peter


Svara

Sv: ta varje bokstav tills enter trycks ner och lagra allt i en char?

Postades av 2004-05-22 14:09:31 - Niklas Jansson

testa att ändra till
while(tecken!=10);


Svara

Sv: ta varje bokstav tills enter trycks ner och lagra allt i en char?

Postades av 2004-05-23 10:46:37 - Ted Johansson

här är koden som skriver till filen

ofstream passwordoutfile ("password");
passwordoutfile << reciveddata.c_str();
passwordoutfile.close();

anledningen till .c_str() efter reciveddata beror på att jag skickar från en client till en server och att jag returnerar en string från en funktion för jag vet inte hur man gör när man retunerar en char från en funktion, hur gör man det förresten?


Svara

Sv: ta varje bokstav tills enter trycks ner och lagra allt i en char?

Postades av 2004-05-23 12:29:50 - Peter Larsson

>för jag vet inte hur man gör när man retunerar en char från en funktion, hur gör man det förresten?
Det är bara att returnera adressen till det första tecknet i strängen.

T.ex:
<code>
char* funktion()
{
char[] szBuf="qwerty";
return (char*)szBuf;
}
</code>

/Peter


Svara

Sv: ta varje bokstav tills enter trycks ner och lagra allt i en char?

Postades av 2004-05-23 12:44:46 - Niklas Jansson

Att returnera en char gör man med att skriva

char funktion(...)
{
    return 'a';
}


Vill man däremot returnera en teckensträng bör man INTE returnera en char* (dvs. en c-sträng), utan istället just en std::string. Dessutom behöver man allra oftast inte c_str, utan din kod är helt perfekt, med ett undantag. Så här bör den se ut:

        ofstream passwordoutfile ("password");
        passwordoutfile << reciveddata;
        passwordoutfile.close(); 


Svara

Nyligen

  • 14:24 CBD regelbundet?
  • 14:23 CBD regelbundet?
  • 14:22 Har du märkt några verkliga fördel
  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 616
27 953
271 709
5 580
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies