Zum Inhalt springen

Parameter als Referenz übergeben!


Woodstock

Empfohlene Beiträge


#include <iostream>

using namespace std;


#define X 30


void main(void)

{

	char buffer[X][X];

	int i = 0;


	do

	{

		cin.getline(buffer[i++], X);

	}

	while((strcmp(buffer[i-1],"")) && (i < X) ); //   


	while(i)

		cout << buffer[--i] << endl;

} [/code]




Jetzt mußt du nur noch mit dem Problem umgehen, daß der Benutzer



wort1 <enter>



aber auch



wort2 wort3 <enter>



eingeben kann...

...dann mußt du noch die einzelnen Wörter aus den Strings pulen.



Alternative:

du liest Zeichenweise ein und brichst bei '\n''\n' ab:



[code] while(1) { //... if( (c=cin.get()) == '\n') { if(cin.peek() == '\n') break; // zweimal <enter> hintereinander } //... }

Dann mußt du "nur" die whitespaces zwischen den Wörtern wegschmeißen und an den Wortgrenzen zum nächsten Array-Element weitergehen :)

(Ich weiß, while(1) mit break ist immer so 'ne Sache... :cool: )

<FONT COLOR="#a62a2a" SIZE="1">[ 19. Oktober 2001 12:23: Beitrag 1 mal editiert, zuletzt von captain haddock ]</font>

Link zu diesem Kommentar
Auf anderen Seiten teilen

So, es funktioniert so wie es soll!

Danke, auch wenn es nicht komplett Deine Lösung ist, sondern nur teilweise. Schaut jetzt so aus:

 	do

	{

		cout << "Bitte das " <<scnt2+1 << ". gesuchte Wort eingeben: ";	

		cin.getline(buffer2, 1000);

		_strlwr(buffer2);

		strcpy(Eingabe[scnt2], buffer2);

		scnt2++;

	} while (strlen(buffer2) > 0); 

Schönes Wochenende!!!

Bine

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ja, wenn der DAU sich benimmt funktionierts. Was aber wenn der Benutzer etwa

Apfel <enter>

Birne Kirsche <enter>

eingibt?

Dann sind deine Suchwörter "Apfel" und "Birne Kirsche" :confused:

Nicht, daß ich hier jemandem das Wochenende verleiden wollte...

... daher hier noch ein kleiner Vorschlag:


#include <iostream>

#include <strstrea.h>

using namespace std;


#define X 30


void main(void)

{

	char* s = "apfel birne kirsche";

	char x[X];


	istrstream in(s);

	while(in.good())

	{

		in >> x;

		std::cout << x << std::endl;

	}

	std::cout << "Fertig!" << std::endl;

}

Die wiederholte Erwähnung von 'std' hängt mit dem kapriziösen MSVC zusammen, man kann auch #include <iostream> und die using-Direktive weglassen, aber das ist hinterher auch nicht ganz einleuchtend.

Ja, schönes Wochenende ! :D

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hmm, also von dem was Du als letztes geschrieben hast, verstehe ich nur Bahnhof, aber egal...

Passt schon so...

Soll jetzt das Programm so umstellen/-schreiben, das es über die CommandLine benutzt werden kann, hast Du da einen Tip, wie ich das anstellen kann, bzw. was für Befehle ich dafür brauche und so, das ich da selber nach gucken kann???

Bine

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ja, ich weiß schon was Du meinst, aber das Problem gab es ja vorher genau so, da ich ja auch Zeilenweise eingelesen habe, bis der Benutzer mit <Enter> bestätigt hat. Dabei hat sich ja nicht geändert. Mal sehe, wenn ich noch Lust habe, änder ich das noch. Jetzt erstmal zum weiteren Verlauf.

Habe das mit der Command Line jetzt ersteinmal noch hinten angestellt. Will jetzt ersteinmal versuchen es hinzubekommen, das ich Ordner auf einen bestimmten Dateityp oder auch mehrere Dateitypen hin durchsuchen kann, die dann wiederum auf die Suchbegriffe überprüft werden sollen.

*verzweifel*

Bine

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...