Pętla ale jak? C++

0

Jak wykonać pętlę(funkcje?), która będzie czekała aż użytkownik naciśnie jakikolwiek klawisz żeby kontynuować program?

0
#include <iostream>
using namespace std;

void funkcja();
/**************************************************************/
   int main()
    {
	funkcja();
    }
/**************************************************************/
void funkcja()
{
   char klawisz;

    do

{cin >> klawisz;}
  while(klawisz==NULL);
cout << "Wcisnales cos.. koniec";

}

Tak.

http://ideone.com/exvXW

Edit:

#include <iostream>
#include<string>
using namespace std;

void funkcja();

int main()
{
	funkcja();
	cout << "Podaj imie: ";
	string imie;
	cin >> imie;
	cout << "nazywasz sie " << imie << endl;

	cin.ignore();
	cin.get();
}

void funkcja()
{
char klawisz;

cin >> klawisz;

}
0

@Oak

 #include <iostream>
#include<string>
using namespace std;

void funkcja();

int main()
{
	funkcja();
	cout << "Podaj imie: ";
	string imie;
	cin >> imie;
	cout << "nazywasz sie " << imie << endl;

	cin.ignore();
	cin.get();
}

void funkcja()
{
char klawisz;

do

{cin >> klawisz;}while(klawisz==NULL);
cout << "Wcisnales cos.. koniec petli " << endl;

}
1
#include <iostream>
#include <conio.h>

using namespace std;

void funkcja()
{
	_getch();

	cout << "Wcisnales cos.. koniec";
	//_getch();
}

int main()
{
	funkcja();
}
0

Jeżyki C/C++ nie posiadają wbudowanej biblioteki aby zrealizować kontynuacje po naciśnięciu klawisza.
Można jedynie czekać na <enter> a po tym wywalić z bufora klawiatury wszystko co tam trafiło:
cin.sync();cin.get();cin.sync();

Ale jest mnóstwo bibliotek które dla konkretnego systemu operacyjnego zrobią dokładnie to co chcesz.
getch() // <conio.h> - występuję (raczej występował) w kompilatorach Borlanda
_getch() // <conio.h> - gcc zrobił łaskę
oraz natywne biblioteki takie jak np. WinAPI - pod windows.
np: http://msdn.microsoft.com/en-us/library/windows/desktop/ms685035%28v=vs.85%29.aspx

  • Można nawet czekać na poruszenie myszy.
0

Dzięki wszystkim za pomoc;D

1 użytkowników online, w tym zalogowanych: 0, gości: 1