Anonymní profil Kuba – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil Kuba – Programujte.comAnonymní profil Kuba – Programujte.com

 

Příspěvky odeslané z IP adresy 2001:718:2:a3:e94e:9a7e:2...–

Kuba
C / C++ › Předávání (sdílení) pole str…
24. 3. 2012   #155404

 Zdravím, už nějakej čas nad tím koumám a nějak se nemůžu hnout z místa. Potřeboval bych mít v rámci programu jedno pole struktur, který budu ve funkci dle potřeby dynamicky zvětšovat a jakmile se vrátím do mainu, budu mít přístup ke všem jeho prvkům. Po vykonání určitý části ho pak chci zase pomocí ukazatele poslat jiné funkci. Tady je jednoduchá ukázka jak by to mělo vypadat. 

Nastává několik otázek:
1) můžu pole alokovat pomocí new() ve funkci a zrušit ho až ke konci mainu?
2) jakým způsobem bych měl potom v mainu přistupovat k těm prvkům? ( TResults.m_A?)

#include <cstdlib>
#include <cstdio>
#include <iostream>
using namespace std;



typedef struct TResults
 {
   int             m_A;
   int             m_B;
 } TRESULTS;
 
 
 void pokus(TRESULTS * res,int resL) {
 
     int agent=2;
     int mLen=10;
     
         res = new TRESULTS[resL+1];
         
         res[resL] . m_A = agent;
         res[resL] . m_B = mLen;

         resL++;

 }
 

int main(int argc, char** argv) {
 
    TRESULTS * res;
    int resL=0;
    
        pokus(res,resL);
      
    delete [] res;
    return 0;
}

Budu vděčný za jakoukoli radu! :-) 

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý