Új hozzászólás Aktív témák

  • don_peter

    senior tag

    Közben meg is oldottam a dolgot.
    A kérdésem a következő lenne:
    Van esetleg egyszerűbb és hatékonyabb megoldás a következő kódomra?
    #define MAXTOMBSIZE 32 //headerbe

    //main()
    unsigned int maxmemtomb;
    char meminput[MAXTOMBSIZE] = "Valaminev#60#120#185#225#240#260";
    char memtomb[7][46];
    int i,z,x;
    char ek = '#';
    maxmemtomb = MAXTOMBSIZE;
    x=0;
    z=0;
    for(i=0; i<=maxmemtomb-1; i++){
    if(meminput[i] == ek){
    z=0;
    x++;
    printf("\n%c", meminput[i+1]);
    memtomb[x][z] = meminput[i+1];
    z++;
    i++;
    }else{
    printf("%c", meminput[i]);
    memtomb[x][z] = meminput[i];
    z++;
    }
    }
    printf("\n\nTömbbe rendezve:\n");
    for(i=0; i<=6; i++){
    printf("%i. adat: %s\n",i, memtomb[i]);
    }

    Illetve az is érdekel, hogy miért kellett a "char memtomb[7][46];" többdimenziós tömböm második paraméterébe minimum 46-ot tennem, hogy jó eredményt kapjak?
    Ezt nem értem még akkor sem, ha így működik...
    Elviekben ott a maximum 9 karakter lehet mert a "Valaminev" a leghosszabb string nem? Vagy nem jól értelmezek valamit?

Új hozzászólás Aktív témák