Stránka 1 z 1

pole a funkce jazyk c

Napsal: 05 lis 2011 11:59
od crash40
cau kdyz mam 2 pole o n clenech a funkci a tech chci to te funkce poslat jen prvni tri cleny z kazdeho pole?
jak by se to dalo udelat prosim dik moc.

Re: pole a funkce jazyk c

Napsal: 05 lis 2011 13:21
od faraon

Kód: Vybrat vše

#include <stdio.h>

void vypis(int data[],int pocet)
     {
     int i;

     for (i=0;i<pocet;++i)
         printf("%d\n",data[i]);
     }

int main(void)
    {
    int pole1[]={0,1,2,3,4,5,6,7,8,9},
        pole2[]={0,10,20,30,40,50,60,70,80,90};

    printf("Výpis prvních 3 prvků 1. pole:\n");
    vypis(pole1,3);

    printf("Výpis prvních 3 prvků 2. pole:\n");
    vypis(pole2,3);

    return 0;
    }


Jestli chceš zbytek pole nějak před tou funkcí skrýt, tak to se nedá, protože předáváš ukazatel a přes ukazatele je přístupné libovolné místo v přidělené paměti.

Ještě zajímavější by bylo, kdybys třeba chtěl prvních pět prvků vynechat, a předat jen následující tři:

Kód: Vybrat vše

    vypis(pole1 + 5,3);