Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- a) deklarišite pokazivač p1 na int
- b) alocirajte prostor pokazivaču p1 u dinamičkoj memoriji
- c) učitajte broj sa tastature u prethodno alocirani prostor
- d) inkrementirajte prethodno uneseni broj koristeći pokazivač p1 pomoću operatora ++
- e) definišite i pozovite funkciju promjeni_predznak čiji će formalni parametar biti pokazivač;
- funkcija treba promijeniti predznak broju koji je korisnik unio u koraku c (funkcija ne smije 'pasti' ako joj kao aktuelni parametar koji proslijedimo
- pokazivač koji ne pokazuje nigdje, NULL-pokazivač)
- f) deklarirajte varijablu d i neka pokazivač pokazuje na varijablu d (Kojeg tipa mora biti varijabla d, da bi ovo bilo moguće?)
- g) dodijelite varijabli d neku vrijednost koristeći pokazivač p1
- h) alocirajte pokazivaču p1 novi memorijski prostor u dinamičkoj memoriji i dodijelite mu vrijednost koja je dvostruko veća od vrijednost d
- i) promijenite predznak varijabli d, koristeći funkciju promjeni_predznak
- j) dealocirajte memorijski prostor na koji pokazuje p1
- k) pozovite funkciju promjeni_predznak i proslijedite joj kao aktuelni parametar pokazivač p1 (uvjerite se da ste prethodni korak riješili u
- potpunosti kako u ovom koraku ne biste imali problema)
- */
- #include <iostream>
- using namespace std;
- //e
- void promjeni_predznak(int * pok)
- {
- if (pok == NULL) {
- cout << "GRESKA!"; return;
- }
- *pok *= -1;
- }
- int main(){
- //a
- int * p1 = NULL;
- //b
- p1 = new int;
- //c
- cout << "Unesite neki broj: ";
- cin >> *p1;
- //d
- (*p1)++;
- //e
- promjeni_predznak(p1);
- //f
- int d;
- p1 = &d;
- //g
- *p1 = 69;
- //h
- p1 = new int;
- *p1 = 2 * d;
- //i
- promjeni_predznak(&d);
- //j
- delete p1;
- p1 = NULL;
- //k
- promjeni_predznak(p1);
- system("pause>null");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement