PRZYKŁADOWE ZADANIE Z KSIAZKI

0

(Jak cos to sie dopiero zaczalem tego uczyc, nie hejtujcie xd)
Mam przykład programu z użyciem podstawowych typow danych, przepisuje go 1 do 1, wyświetla te wartości, ale mimo wszystko pokazuje jakieś błędy. W czym może byc problem?

#include <stdio.h>
#include <stdio.h>
int main(void)
{
	int integerVar = 100;
	float floatingVar = 331.79;
	double doubleVar = 8.44e+11;
	char charVar = 'W';


    _Bool boolVar = 0;


	printf("IntegerVar = %i\n", integerVar);
	printf("floatingVar = %f\n", floatingVar);
	printf("doubleVar = %e\n", doubleVar);
	printf("doubleVar = %g\n", doubleVar);
	printf("charVar = %c\n", charVar);

	printf("boolVar = %i\n", boolVar);

	return 0;
}
0

Ważność Kod Opis Projekt Plik Stan pominięcia
Błąd (aktywny) E0020 identyfikator "_Bool" jest niezdefiniowany ConsoleApplication11 C:\Users\Użytkownik\source\repos\ConsoleApplication11\ConsoleApplication11\ConsoleApplication11.cpp
Ważność Kod Opis Projekt Plik Stan pominięcia
Ostrzeżenie C4305 "inicjowanie": obcięcie z "double" do "float" ConsoleApplication11 C:\Users\Użytkownik\source\repos\ConsoleApplication11\ConsoleApplication11\ConsoleApplication11.cpp
Ważność Kod Opis Projekt Plik Stan pominięcia
Błąd C2065 "_Bool": niezadeklarowany identyfikator ConsoleApplication11 C:\Users\Użytkownik\source\repos\ConsoleApplication11\ConsoleApplication11\ConsoleApplication11.cpp
Ważność Kod Opis Projekt Plik Stan pominięcia
Błąd C2146 błąd składniowy: brakuje „;” przed identyfikatorem „boolVar” ConsoleApplication11 C:\Users\Użytkownik\source\repos\ConsoleApplication11\ConsoleApplication11\ConsoleApplication11.cpp
Ważność Kod Opis Projekt Plik Stan pominięcia
Błąd C2065 "boolVar": niezadeklarowany identyfikator ConsoleApplication11 C:\Users\Użytkownik\source\repos\ConsoleApplication11\ConsoleApplication11\ConsoleApplication11.cpp
Ważność Kod Opis Projekt Plik Stan pominięcia
Błąd C2065 "boolVar": niezadeklarowany identyfikator ConsoleApplication11 C:\Users\Użytkownik\source\repos\ConsoleApplication11\ConsoleApplication11\ConsoleApplication11.cpp

A tak wgl jak moze mi wywalac bledy z przykladu z ksiazki?

0

@Zaiker:
Chyba masz literówkę _Bool boolVar = 0;:
Na co zresztą wskazuje błąd. Zamień na bool.

#include <stdio.h>
#include <stdio.h>
int main(void)
{
  int integerVar = 100;
  float floatingVar = 331.79;
  double doubleVar = 8.44e+11;
  char charVar = 'W';

  bool boolVar = 0;

  printf("IntegerVar = %i\n", integerVar);
  printf("floatingVar = %f\n", floatingVar);
  printf("doubleVar = %e\n", doubleVar);
  printf("doubleVar = %g\n", doubleVar);
  printf("charVar = %c\n", charVar);

  printf("boolVar = %i\n", boolVar);

  return 0;
}

0

Dlaczego piszesz w C, a tworzysz projekt C++, i go kompilujesz jako C++?

1

Zmień drugą linijkę z:

#include <stdio.h>

na:

#include <stdbool.h>
1

@vpiotr: NIE. Pierwsze co OP powinien zrobić to użyć kompilatora C a nie C++.
A czy kompilator MS wspiera typ _Bool to osobna sprawa.

0
alagner napisał(a):

@vpiotr: NIE. Pierwsze co OP powinien zrobić to użyć kompilatora C a nie C++.

A czy kompilator MS wspiera typ _Bool to osobna sprawa.

Jak to zrobić?

0

Najsampierw zmień rozszerzenie pliku z .cpp na .c. Potem będziemy kombinować dalej ;)

0

@alagner: Zmieniłem

4
  1. To wygląda na C, a nie na C++ (tag mówi C++) - uściślij to. Jakie masz rozszerzenie pliku źródłowego?
  2. Powołujesz się na książkę. Co to za książka? (pomoże z punktem 1)
  3. Symbole zaczynające się od podkreślania są zarezerwowane i nie powinny być używane lub definiowane Wyjaśnienie _Bool vs bool - generalnie _Bool zostało wprowadzone by zapobiec problemom ze starym kodem napisanym w starszych wersjach standardu C.
  4. Poprawiane na C: https://godbolt.org/z/jqzfcvKW1
  5. poprawione na zgodne z C++: https://godbolt.org/z/59rnhGx74 (w C++ bool jest typem wbudowanym, w C jest zdefiniowane jako makro).

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