» »

[c++] operator new pa pointerji

[c++] operator new pa pointerji

Tutankhamun ::

Ene probleme mam pa mi ne gre :|, sej ni edina stvar :D.

void gb(char *pA)
{
     pA = new char[5];

     //tuki se neki upisujem v polje pA
}

int main()
{
     char *c;

     gb(c); //tuki mi jav napako


     return 0;
}


Javi mi pa tole :|
Run-Time Check Failure #3 - The variable 'c' is being used without being defined

Js bi rd v eni drugi funkciji dolocu velikost polja in ga zafilu s podatki, ampak ne znam.

Kako nj zdej to nardim?
AMD Phenom QUAD 9950 Black Edition, 8GB

NoUse4AName ::

1. Vsakič ko narediš kazalec mu daj neko vrednost. Če nimaš kaj, daj NULL.
Torej: char* c = NULL;

2. Ko ti daš spremenljivko kot parameter v funkcijo, se naredi KOPIJA te spremenljivke ko se funkcija kliče. Torej po klicu tvoje funkcije bo imel c isto vrednost kot prej.

Tutankhamun ::

Hitr odgovor :)

1. Ok napredek je že
2. Kako pa nradim, da ko pridem iz funkcije, da bo imeu c novo vrednost, ki sm jo naredu v funkciji ?


Hvala
AMD Phenom QUAD 9950 Black Edition, 8GB

Good Guy ::

char *c dej kot globalno spremenljivko..
http://goo.gl/7ItKpU
Naj računalnik dela za vas^^

Tutankhamun ::

eeee Ja :). Ampak tole ni ceu program, je mau vec pa bol kompliciran.
Js rabm tocn to kar sm napisu. Globalne spremenljivke pa ne morem met. :D
AMD Phenom QUAD 9950 Black Edition, 8GB

OwcA ::

Zakaj kompliciraš s kazalci, če jih ne znaš uporabljati. Reference bi tu prav dobro služile.

P.S. globalna spremenljivka je obupna ideja.
Otroška radovednost - gonilo napredka.

Good Guy ::

je pa rešitev...
http://goo.gl/7ItKpU
Naj računalnik dela za vas^^

Tutankhamun ::

Ja ok, če bi znau neb spraševau :|.
Če kdo ve nj pove, drgač bom pa kje drugje uprašu.
AMD Phenom QUAD 9950 Black Edition, 8GB

64202 ::

void gb(char *pA)
das v tole:
void gb(char *&pA)

Odvisno kaj res hoces doseci, tole je verjetno lepse:

char *gb()
{
char *c = new char[123];
...
return c;
}

Se lepse pa je, ce uporabis std::string ali std::vector<char> (za surov buffer)
I am NaN, I am a free man!

Tutankhamun ::

Hvala 64202
AMD Phenom QUAD 9950 Black Edition, 8GB

BigWhale ::

64,

> char *gb()
> {
> char *c = new char[123];
> ...
> return c;
> }


Skwi! What about delete? :P

64202 ::

Pozorni klicatelj te grde funkcije bo poskrbel za delete, ane? :)
I am NaN, I am a free man!


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Nemorem rešit ene naloge z c++ (sem začetnik) (strani: 1 2 )

Oddelek: Programiranje
6810449 (6187) technolog

[C#]polje znakov

Oddelek: Programiranje
112384 (2212) Ziga Dolhar
»

[C] struct in int[] (strani: 1 2 )

Oddelek: Programiranje
657360 (6433) MrBrdo
»

C osnova

Oddelek: Programiranje
221557 (1072) RunoTheDog
»

statistika črk v stringu C++

Oddelek: Programiranje
112081 (1817) Tutankhamun

Več podobnih tem