• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Visual c++ Cout, cin,endl nie działa

0 głosów
3,417 wizyt
pytanie zadane 25 października 2018 w C i C++ przez XezolPL Obywatel (1,530 p.)
edycja 25 października 2018 przez XezolPL

#include <iostream>
#include "pch.h"
#include <vector>
#include <windows.h>
#include <string>
#include <fstream>
	using namespace std;
	fstream plik;
	class Event
	{
		int hour, minute;
		string name;
		int value;
	public:

		bool wrong = false;
		Event(string n = "", int h = 0, int m = 0)
		{
			minute = m;
			hour = h;
			name = n;
		}
		void add()
		{
			string name1;
			int hour1, minute1;
			cout << endl << "Event name: ";
			cin >> name1;
			cout << endl << "Event hour: ";
			cin >> hour1;
			cout << endl << "Event minute: ";
			cin >> minute1;
			if (name1 != "" && hour1 >= 0 && hour1 <= 24 && minute1 >= 0 && minute1 <= 60)
			{
				if (hour1 == 24)
					hour1 = 0;
				if (minute1 == 60)
				{
					minute1 = 0;
					hour1 = hour1 + 1;
				}

				name = name1;
				hour = hour1;
				minute = minute1;
				value = hour * 60 + minute;
				wrong = false;

				plik.open("Data.txt", ios::out | ios::app);
				plik << " " << name << " at ";
				if (hour < 10)
					plik << "0" << hour;
				else
					plik << hour;
				plik << ":";
				if (minute < 10)
					plik << "0" << minute;
				else
					plik << minute;
				plik << endl;
			}
			else
			{

				wrong = true;

			}
		}
		void display()
		{
			cout << " " << name << " at ";
			if (hour < 10)
				cout << "0" << hour;
			else
				cout << hour;
			cout << ":";
			if (minute < 10)
				cout << "0" << minute;
			else
				cout << minute;
			cout << endl;
		}
		int getValue()
		{
			return value;
		}
		void edit()
		{
			int select; string name2; int hour2, minute2;
			cout << "Editing an element" << endl << "1. Edit name" << endl << "2.Edit time" << endl << "Select: ";
			cin >> select;
			if (select == 1)
			{
				cout << "Current name: " << name << endl << "New name: ";
				cin >> name2;
				if (name2 != "") name = name2;
				else cout << "Wrong name! Try again!" << endl;
			}
			if (select == 2)
			{
				cout << endl << "Current hour: " << hour << endl << "New hour: ";
				cin >> hour2;
				cout << endl << "Current minute: " << minute << endl << "New minute: ";
				cin >> minute2;
				if (hour2 >= 0 && hour2 <= 24 && minute2 >= 0 && minute2 <= 60)
				{
					hour = hour2;
					minute = minute2;
				}
				else cout << "Wrong time! Try again!" << endl;
			} // if select 2
		}// edit
	};

	int main()
	{
		bool created = false;
		vector<Event> evs;
		char choice, cho;
		int createdItem;
		do
		{
			cout << "---------------------------" << endl;
			for (int i = 0; i < evs.size();)
			{
				if (created == true)
				{
					createdItem = i;
					evs[i].display();
					i++;

				}
				else if (created == false)
					break;
				else
					cout << "Something got wrong!";
			}
			cout << "---------------------------" << endl << endl;
			cout << "Main Menu" << endl << endl;
			cout << "1. Add an event" << endl;
			cout << "2. Pop an event" << endl;
			cout << "3. Edit an event" << endl;
			cout << "4. Clear all events" << endl;
			cout << "5. End the program" << endl;
			cout << "Your choice: ";
			cin >> choice;
			switch (choice)
			{
			case '1':
			{
				do
				{
					Event ev1;
					ev1.add();
					if (ev1.wrong == false)
					{
						evs.push_back(ev1);
						created = true;
						system("cls");
						cout << "1.Continue adding events " << endl;
						cout << "2.Back to main menu" << endl;
						cout << "Your choice: ";
						cin >> cho;
					}
					else
					{
						cout << "Error! Wrong values! Try again!" << endl;
						Sleep(1000);
						system("cls");
						break;
					}
				} while (cho == '1');
			}
			break;
			case '2':
				evs.pop_back();
				break;
			case '3':
			{
				int elem;
				system("cls");
				cout << "Which element: ";
				cin >> elem;
				if (elem - 1 <= createdItem)
					evs[elem - 1].edit();
				else cout << "This element doesn't exist." << endl;


			}
			break;
			case '4':
			{
				evs.clear();
				created = false;
				createdItem = 0;
			}
			break;
			case '5':
			{
				plik.close();
				plik.clear();
				return 0;

			}


			}
			system("cls");
		} while (choice != 5);


		return 0;
	}


Witam co jest z tym visual c++ bo mnie szlag już trafia. Musze zmienic oprogramowanie bo pisze duży projekt i się próbuje przenieść na visuala ale ten jest takim gównem że nic sie na nim nie da zrobić. Poprawnie napisany program z deklaracją using namespace std; i iostreamem nie dziala i wywala errory na kazdego cina couta czy endl (std) a ten sam program dziala swietnie w np codeblocksie. Prosze o pomoc w czym tkwi błąd?

komentarz 25 października 2018 przez RafalS VIP (122,780 p.)
Jak mamy Ci pomóc bez treści błędu czy kodu?
komentarz 25 października 2018 przez XezolPL Obywatel (1,530 p.)
1>c:\users\mateusz\source\repos\consoleapplication3\consoleapplication3\consoleapplication3.cpp(28): error C2065: "cout": niezadeklarowany identyfikator
1>c:\users\mateusz\source\repos\consoleapplication3\consoleapplication3\consoleapplication3.cpp(28): error C2563: niezgodność w liście formalnych parametrów
1>c:\users\mateusz\source\repos\consoleapplication3\consoleapplication3\consoleapplication3.cpp(28): error C2568: "<<": nie można rozpoznać przeciążenia funkcji
1>c:\users\mateusz\source\repos\consoleapplication3\consoleapplication3\consoleapplication3.cpp(28): note: może to być „std::basic_ostream<_Elem,_Traits> &std::endl(std::basic_ostream<_Elem,_Traits> &)”
1>c:\users\mateusz\source\repos\consoleapplication3\consoleapplication3\consoleapplication3.cpp(29): error C2065: "cin": niezadeklarowany identyfikator
1>c:\users\mateusz\source\repos\consoleapplication3\consoleapplication3\consoleapplication3.cpp(30): error C2065: "cout": niezadeklarowany identyfikator
1>c:\users\mateusz\source\repos\consoleapplication3\consoleapplication3\consoleapplication3.cpp(30): error C2563: niezgodność w liście formalnych parametrów
1>c:\users\mateusz\source\repos\consoleapplication3\consoleapplication3\consoleapplication3.cpp(30): error C2568: "<<": nie można rozpoznać przeciążenia funkcji
1>c:\users\mateusz\source\repos\consoleapplication3\consoleapplication3\consoleapplication3.cpp(30): note: może to być „std::basic_ostream<_Elem,_Traits> &std::endl(std::basic_ostream<_Elem,_Traits> &)”
1>c:\users\mateusz\source\repos\consoleapplication3\consoleapplication3\consoleapplication3.cpp(31): error C2065: "cin": niezadeklarowany identyfikator
1>c:\users\mateusz\source\repos\consoleapplication3\consoleapplication3\consoleapplication3.cpp(32): error C2065: "cout": niezadeklarowany identyfikator
1>c:\users\mateusz\source\repos\consoleapplication3\consoleapplication3\consoleapplication3.cpp(32): error C2563: niezgodność w liście formalnych parametrów
Pokazuje cout jako niezaklarowany identyfikator mimo że wszędzie dałęm using namespace std;
komentarz 25 października 2018 przez RafalS VIP (122,780 p.)
Kod? I na milość Boską zmień język na angielski. Jak chcesz googlować błędy na stacku jak będziesz miał ich polskie tlumaczenie?
komentarz 25 października 2018 przez XezolPL Obywatel (1,530 p.)
jest dodany
komentarz 25 października 2018 przez XezolPL Obywatel (1,530 p.)

@RafalS, dopiero wbiłem na to środowisko, to tam sie niezagłebiałem w jezyk itd jak mi prostych programów nie może skompilować to co dopiero o robienie tutaj już graficznego okienowego programu... Może to przez ich kompilator? W codeblocks chyba był GNU?

komentarz 25 października 2018 przez Secrus Nałogowiec (32,880 p.)

spróbuj zrobić: 

namespace std
{
    //tutaj twoj kod
}

albo pododawaj std:: przy każdym cout, cin i endl

1 odpowiedź

0 głosów
odpowiedź 25 października 2018 przez RafalS VIP (122,780 p.)
wybrane 25 października 2018 przez XezolPL
 
Najlepsza

Przetłumaczyłem Twój błąd na angielski i wygoglowałem. Nie odbieraj sobie googlowania błędów. Zmień język na angielski:

https://stackoverflow.com/questions/1868603/error-c2065-cout-undeclared-identifier#answer-26517329

Dodaj prekompilowany nagłówek na sam początek:

#include "stdafx.h"
#include <iostream>

Uwaga to musi być pierwsza linijka, inaczej nie zadziała.

komentarz 25 października 2018 przez XezolPL Obywatel (1,530 p.)
Jejku dziękuję bardzo, już działa, już zmieniam na angielski ;) Tak btw nie wiesz może jak przenieść teraz taki program w visualu na okienkowy?
komentarz 25 października 2018 przez RafalS VIP (122,780 p.)
Nope, nigdy sie tym nie zajmowałem. Zadaj oddzielne pytanie albo pogoogluj :)

Podobne pytania

0 głosów
1 odpowiedź 595 wizyt
0 głosów
1 odpowiedź 1,028 wizyt
pytanie zadane 13 marca 2019 w C i C++ przez Michał_Warmuz Mądrala (5,830 p.)
0 głosów
1 odpowiedź 1,113 wizyt
pytanie zadane 1 czerwca 2019 w C i C++ przez Karol Bychowski Nowicjusz (140 p.)

93,740 zapytań

142,675 odpowiedzi

323,294 komentarzy

63,319 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...