[c/c++] operator new i tablica wskaźników
Autor
Wiadomość
Maciek
Programmer
Pomógł: 9 razy Skąd: Radom
Wysłany: 2006-08-21, 12:04 [c/c++] operator new i tablica wskaźników
Przerabiam symfonie c++ standard, jestem na wskaźnikach. A teraz pytanie: Jak napisać funkcje, która zarezerwuje 10 elementową tablice, a jej adres przekaże wskaźnikowi o nazwie linijka. Ma to być tablica, w której można przechowywać wskaźniki do char?
_________________"Zawsze łatwiej jest zmienić kod, którego jeszcze nie napisałem"
Asdef
Administrator
Pomógł: 33 razy Skąd: Lodz
Wysłany: 2006-08-21, 12:29
Kod: #include <iostream.H>
int main(int argc, char* argv[])
{
int *wsk[10];
for(int i=0;i<10;i++)
wsk[i] = new int;
cout <<"podaj 10 liczb, która będzie przypisana w jednej alokacji tablicy \n";
for(int i=0;i<10;i++){
cin >> *wsk[i];
}
cout <<"\n###\n";
for(int i=0;i<10;i++){
cout <<"liczba nr " << i << " = " << *wsk[i] << endl;
}
for(int i=0;i<10;i++)
delete wsk[i];
system("Pause");
return 0;
}
_________________ PCT szuka ludzi dobrej woli, którzy jak mają ciekawe artykuły pisane z własnej ręki, to oczywiście można je nadsyłać nawet z gościa, po zatwierdzeniu przez moderatora…
http://www.pctown.pl/submitnews.php
lub wysyłać na asdef(malpa)o2.pl
http://img528.imageshack.us/img528/3311/dn9ar.png
Maciek
Programmer
Pomógł: 9 razy Skąd: Radom
Wysłany: 2006-08-21, 12:50
Niby tak, ale jak tą deklaracje do funkcji wklecić? Kod: #include <iostream>
using namespace std;
char *funkcja()
{
char *wsk[10];
return wsk; //7 wiersz, w nim wyskakuje błąd
}
int main()
{
char *linijka;
linijka=funkcja();
for(int i=0;i<10;i++) linijka[i] = new char; //dalej to już tak samo jak u asdef'a u góry
Cytat: 7 D:\Dev-Cpp\symf_ćwicz\8.XLVII.cpp cannot convert `char**' to `char*' in return
_________________"Zawsze łatwiej jest zmienić kod, którego jeszcze nie napisałem"
Asdef
Administrator
Pomógł: 33 razy Skąd: Lodz
Wysłany: 2006-08-21, 13:31
Kod: #include <iostream>
using namespace std;
char *funkcja() {
int *wsk[10];
for(int i=0;i<10;i++)
wsk[i] = new int;
cout <<"podaj 10 liczb, która będzie przypisana w jednej alokacji tablicy \n";
for(int i=0;i<10;i++){
cin >> *wsk[i];
}
cout <<"\n###\n";
for(int i=0;i<10;i++){
cout <<"liczba nr " << i << " = " << *wsk[i] << endl;
}
for(int i=0;i<10;i++)
delete wsk[i];
system("Pause");
return 0;
}
int main() {
cout<<"wywołanie funkcji \n";
funkcja();
return 0;
}
_________________ PCT szuka ludzi dobrej woli, którzy jak mają ciekawe artykuły pisane z własnej ręki, to oczywiście można je nadsyłać nawet z gościa, po zatwierdzeniu przez moderatora…
http://www.pctown.pl/submitnews.php
lub wysyłać na asdef(malpa)o2.pl
http://img528.imageshack.us/img528/3311/dn9ar.png
Maciek
Programmer
Pomógł: 9 razy Skąd: Radom
Wysłany: 2006-08-21, 13:54
Raczej nie o to chodzi... Mogę dać treść całego zadania?
Edit: http://maciek00.ovh.org/zadanie.txt
_________________"Zawsze łatwiej jest zmienić kod, którego jeszcze nie napisałem"
Ostatnio zmieniony przez Maciek 2006-08-21, 14:07, w całości zmieniany 2 razy
Asdef
Administrator
Pomógł: 33 razy Skąd: Lodz
Wysłany: 2006-08-21, 13:59
Maciek napisał/a: Raczej nie o to chodzi... Mogę dać treść całego zadania?
:padam:
dobra mam juz treść zadania z postu wyżej
_________________ PCT szuka ludzi dobrej woli, którzy jak mają ciekawe artykuły pisane z własnej ręki, to oczywiście można je nadsyłać nawet z gościa, po zatwierdzeniu przez moderatora…
http://www.pctown.pl/submitnews.php
lub wysyłać na asdef(malpa)o2.pl
http://img528.imageshack.us/img528/3311/dn9ar.png