Witam, przerabiam materiał ze wskazników i trafilem na proste zadanie w ktorym wskaznikowi w_nazwisko nadaje wartosc NULL po czym funkcja showName na pobrac od usera imię i nazwisko (tylko wtedy jeżeli wskaznik w_nazwisko ma wartosc null). Niestety kod mi się nie kompiluje i po podaniu imienia i nazwiska wysypuje sie .
1. Czy ma znaczenie jaki typ ma wskaznik ktoremu przypisuje NULLa (string, int, char itp.) ?
2. W 13 linijce kodu if ( surename == NULL) jak napiszę if ( *surename == NULL) wywala bład "comparison between Null and non-pointer". W koncu wartosc null przypisuję wartosci która wskazuje wskaznik a nie adresowi nie ?? jeżeli jest inaczej to prosze oświećcie mnie
Pozdrawiam i z góry dziękuję
#include <iostream> #include <cstdlib> using namespace std; void showName (string* name, string* surename) { cout << "Podaj imie: " ; cin>>*name; cout<<endl; if ( surename == NULL) { *surename = "kutarski"; } cout <<endl<< "imię: "<< *name << " i nazwisko: "<< *surename << endl; } int main(int argc, const char * argv[]) { while (true) { string imie; string nazwisko; string* w_imie = &imie; string* w_nazwisko = NULL; showName(w_imie, w_nazwisko); } return 0; }