Permalänk
Medlem

c++ hjälp

Hej jag började med c++ för typ ett år sedan men gav upp
nu har jag börjat igen och har tänkt att lära mig fstream
men dock så går det inte så bra :/

nån som känner sig snäll och skulle kunna slänga ihop ett program som :

första gången man öppnar
frågar : hej vad heter du?

sen andra gången ska det säga
hej <namn>!

sen ska jag bygga vidare massa på det men jag behöver ha grunden

och så btw vet ni nån bra svensk eller engelsk video tutorial serie (så lång som möjligt)?
Hittar bara tyska video tutarials

hittade dock snubben "antirtfm" på youtube o han har en nice tutorial men jag känner bara att han förklarar för mycket
det går för sakta frammåt
gärna någon tutorial med tester o så(finns i dom tyska)
så efter en speciel sak (tex fstream) så står det typ gör ett program som blablabla..

Hoppas ni fattar och att nmån vill hjälpa mig

// c++ newb

Permalänk
Medlem

det är alltså fstream jag vill lära mig

Permalänk
Medlem
Skrivet av -rand-:

Hej jag började med c++ för typ ett år sedan men gav upp
nu har jag börjat igen och har tänkt att lära mig fstream
men dock så går det inte så bra :/

nån som känner sig snäll och skulle kunna slänga ihop ett program som :

första gången man öppnar
frågar : hej vad heter du?

sen andra gången ska det säga
hej <namn>!

sen ska jag bygga vidare massa på det men jag behöver ha grunden

och så btw vet ni nån bra svensk eller engelsk video tutorial serie (så lång som möjligt)?
Hittar bara tyska video tutarials

hittade dock snubben "antirtfm" på youtube o han har en nice tutorial men jag känner bara att han förklarar för mycket
det går för sakta frammåt

gärna någon tutorial med tester o så(finns i dom tyska)
så efter en speciel sak (tex fstream) så står det typ gör ett program som blablabla..

Hoppas ni fattar och att nmån vill hjälpa mig

// c++ newb

Det tar tid att lära sig programmera.. Man lär sig inte på en eftermiddag direkt..

Visa signatur

Corsair Obsidian 250D | i5 7600K | Gigabyte Z270N WiFi | Samsung 960 EVO 250GB | Fractal Design Integra M 650W | Corsair Hydro H90 |Kingston 8GB 2133M DDR4 CL14 | Asus GeForce GTX 970 4GB STRIX DC2 OC MAX |

Permalänk
Medlem

#include <iostream> using namespace std; int main(){ string namn; cout << "Hej, vad heter du?" << endl; cin >> namn; cout << "Hej " << namn << endl; return 0; }

Den koden ska nog fungera

thenewboston (en) http://www.youtube.com/watch?v=tvC1WCdV1XU&feature=list_relat...
Mr1Buying (sv) http://www.youtube.com/playlist?list=PL3A2026F702EBB411&featu...

Permalänk
Medlem
Skrivet av Dakkie:

Det tar tid att lära sig programmera.. Man lär sig inte på en eftermiddag direkt..

jag vet

men jag har försökt sjukt länge med fstream men hur jag än gör så blir det bara helt.... skumt :3

om nån kan c++ så borde den väll kunna slänga ihop ett enkelt program som jag beskrev förut, borde bara ta några minuter?
o det kan ni väll offra för mig :P:P

Permalänk
Medlem
Skrivet av scared:

#include <iostream> using namespace std; int main(){ string namn; cout << "Hej, vad heter du?" << endl; cin >> namn; cout << "Hej " << namn << endl; return 0; }

Den koden ska nog fungera

thenewboston (en) http://www.youtube.com/watch?v=tvC1WCdV1XU&feature=list_relat...
Mr1Buying (sv) http://www.youtube.com/playlist?list=PL3A2026F702EBB411&featu...

det ska sparas i en fil
det är det som jag inte får att funka
:/

Permalänk
Medlem

fstream är bara till för att läsa filer. Man använder ofstream för att skriva i filer.

För att skriva hej namn i en fil:

#include <iostream> #include <fstream> using namespace std; int main(){ ofstream savefile; savefile.open("save.txt"); if(savefile.is_open()){ string namn; cout << "Hej, vad heter du?" << endl; cin >> namn; savefile << "Hej " << namn <<endl; } return 0; }

Edit: Använd getline istället för cin (cin tar bara första ordet)

Permalänk
Inaktiv
Skrivet av -rand-:

Hej jag började med c++ för typ ett år sedan men gav upp
nu har jag börjat igen och har tänkt att lära mig fstream
men dock så går det inte så bra :/

nån som känner sig snäll och skulle kunna slänga ihop ett program som :

första gången man öppnar
frågar : hej vad heter du?

sen andra gången ska det säga
hej <namn>!

sen ska jag bygga vidare massa på det men jag behöver ha grunden

och så btw vet ni nån bra svensk eller engelsk video tutorial serie (så lång som möjligt)?
Hittar bara tyska video tutarials

hittade dock snubben "antirtfm" på youtube o han har en nice tutorial men jag känner bara att han förklarar för mycket
det går för sakta frammåt
gärna någon tutorial med tester o så(finns i dom tyska)
så efter en speciel sak (tex fstream) så står det typ gör ett program som blablabla..

Hoppas ni fattar och att nmån vill hjälpa mig

// c++ newb

Detta verkar vara vad du letar efter : http://www.blinkenlights.se/articles/fortsattningskurscpluspl...

Permalänk
Medlem

Scared glömmde stänga sin fil. MYCKET VIKTIGT!

#include <iostream> #include <fstream> using namespace std; int main(){ ofstream savefile; savefile.open("save.txt"); if(savefile.is_open()){ string namn; cout << "Hej, vad heter du?" << endl; cin >> namn; savefile << "Hej " << namn <<endl; } savefile.close(); //STÄNG FILEN NÄR DU ÄR KLAR return 0; }

om du använder en variabel som filnamn ex: fileName, så får du inte glömma göra om strängen till en c sträng: fileName.c_str();

ex:

#include <iostream> #include <fstream> using namespace std; int main() { string fileName = "save.txt"; ofstream savefile; savefile.open(fileName.c_str()); if(savefile.is_open()){ string namn; cout << "Hej, vad heter du?" << endl; cin >> namn; savefile << "Hej " << namn <<endl; } sacefile.close(); return 0; }

Här är kod för att ladda från fil

#include <iostream> #include <fstream> #include <string> using namespace std; int main() { setlocale(0,"swedish"); //för att få åäö i strängar const int CAP = 10; //max capacity för den statiska arrayen int size = 0; //antal element som finns i arrayen string fileName = "load.txt"; string arr[CAP]; ifstream load; load.open(fileName.c_str()); if(load.is_open()) { while(!load.eof()) //så länge som vi inte har kommit till slutet av filen { getline(load,arr[size]); //vet inte om du har lärt dig getline än size++; } } load.close(); for(int i=0;i<size;i++) //skriv ut innehållet cout<<arr[i]<<endl; return 0; }

*getline gör så att du hämtar hela raden.

*getline kan användas vid inmatning, ex om du vill att ditt namn också ska ha ett eftenamn (tar med space)
ex:

string name; cout<<"Ange hela ditt namn: "<<endl; getline(cin,name);

* VIKTIGT! Om du använder getline funktionen efter att du någon gång har använt cin, så kommer du att få problem.
För att lösa detta så använder du cin.ignore();

ex:

string name; int age; cout<<"hur gammal är du?"<<endl; cin>>age; cout<<"Ange hela ditt namn: "<<endl; cin.ignore(); getline(cin,name);

cin.ignore() bör bara kallas 1 gång om du inte gör en till cin senare i koden

ex:

string name; cin>>name; cin.ignore(); //cin använt innan getline(cin,name); getline(cin,name); getline(cin,name); cin>>name; cin.ignore(); //samma sak här getline(cin,name);

Samma regel gäller för läsa fil:

string info; ifstream load; load.open(fileName.c_str()); load>>info; load.ignore(); getline(load,info);

Fler frågor kring c++ eller Java så kan du skicka ett pm. Jag svarar när jag kan.
lycka till!

Visa signatur

OS: Win7 x64, GPU: Geforce Gigabyte GTX580 SOC
CPU: Intel i5 2500k (4.5gHz), MB: Asus P8P65 PRO Rev(3.1),
PSU: XFX 750w (modular), RAM: 2x Crosair Vengence 1600mz 4024mb
Cooling: CoolIT ECO A.L.C CPU COOLER
Chassi: Raven rv03