4 pytania początkującego

0

Witam!!

A oto te pytania:

1.Bardzo czesto w plikach spotyka się coś takiego jak #define
Ja w książce mam dokładnie coś takiego #define PRINT(STR, VAR)
Co to oznacza??

2.chciałbym, wiedzieć co zrobić w c++ żeby mi do plik.txt dopisal mi cos w pierwszej lini i do drugiej. Jak to zrobić??

Przykład:
plik.txt:
linia
linia

A chciałbym żeby efekt był taki :
linia pierwsza
linia druga

3.Czy da się zrobić taki kalkulator:
a)Wczytuje liczbe do zmiennej a
b)Wczytje znak (+,-,*,/) do zmiennej b
c)Wczytuje druga liczbę do zmiennej c
d)Podaje wynik

4.Czym się różni zmienna string od char??

0

Ad 4. Char to znak, od 0 do 255. Jest jeszcze ciąg znaków, PChar.

0

#define to dyrektywa procesora sluzaca do definiowania czegokolwiek :P
np:

#define DUPA 10
//...
printf("dupa = %d\n",DUPA);

Otrzymasz:
dupa = 10

:P

0

ad 1. odsyłam do rozmaitych helpów

ad 2. metoda tylko dla 2 lini (jezeli chcesz zrobic uniersalne to musisz sobie to w pętle wziąśc pamiętając o otwieraniu i zamykaniu plików)

{
char tab[100];
ifstream odczyt;
ofstream zapis;
odczyt.open("nazwa pliku ze sciezka");
odczyt>>tab; //po slowie a jezeli chcesz po linii odczytywac to getline(tab,100)
odczyt.close();
zapis.open("nazwa pliku ze sciaka");
zapis<<tab<<"tekst lub zmienna która chcesz wpisac";
zapis.close();
}

jezeli chcesz to mozesz otwierac pliki równoczesnie do odczytu i zapisu, w sumie to nawet prosciej... poszukaj tego na forum bo na pewno to jest

ad 3.

void main()
{
	clrscr;
	cout<<"kalkulatorek\ndziaania: dodawanie,odejmowanie,mnoľenie,dzielenie";
	float a,b; char dzialanie;
	cout<<"\n\nwpisz swoje wyrazenie postaci a+(-,*,/)b:  ";
	cin>>a>>dzialanie>>b;
	switch(dzialanie)
	{
		case'+':cout<<"\n"<<a+b;break;
		case'-':cout<<"\n"<<a-b;break;
		case'*':cout<<"\n"<<a*b;break;
		case'/':cout<<"\n"<<a/b;break;
   }
	getch();
}

ad 4. w praktyce to jest tak ze string jest potrzebny przy lanuchach gdzie występuje taka sutyacja ze potrzebaujesz tablicy lancuchów i w przypadku char musiałbys robic 2 wymiarową np char[10][10] a w stringach jest to normalnie. przydatne np do dni tygodnia albo miesięcy w roku

0

Dzieki!!
Mam jeszcze jedno pytanko
Jak zrobic aby program :

cin >> a;

jezeli uytkownik nie wpisze nic do zminnej 'a' w ciagu 10 sekund to :

cout << "za pozno";

Jeszcze raz dzieki!!

0

Przedefiniowac operator>>() na wlasny np. w klasie potomnej. Albo zmienic w ogole metode wczytywania do zmiennej.

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