Forum » Programiranje » Funkcija free() v C-ju!
Funkcija free() v C-ju!
Williams ::
Prosil bi za pomoč. Narediti moram program v C-ju ki ustvari tabelo velikosti N in jo nafila z naključnimi števila 0-100. Očitno moja koda deluje, se pa iz meni neznanega razloga sesuje pri ukazu free(buffer)!?? Ima kdo kakšno idejo?
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
void napolni(int N, int *tab){
int i;
srand(time(NULL));
for(i=0;i<=N;i++){
tab[i]=rand()%100;
}
}
int main(){
int N=0;
int *buffer;
int i;
printf("Vnesi velikost polja: ");
scanf("%d", &N);
buffer=(int*)malloc(N*sizeof(int));
napolni(N, buffer);
free(buffer);
return 0;
}
Williams ::
Če sedaj skušam poiskat še največje število v tabeli
Zakaj mi v vrstici kjer je glava metode "max" vrne syntax error: "type"??
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
void napolni(int N, int *tab){
int i;
srand(time(NULL));
for(i=0;i<N;i++){
tab[i]=rand();
}
}
int max(int N, int *tab)
{
int i;
int max=0;
for(i=0;i<N;i++){
if(tab[i]>max)
max=tab[i];
}
return max;
}
int main(){
int N=0;
int *buffer;
int i;
int m;
int maximum;
printf("Vnesi velikost polja: ");
scanf("%d", &N);
buffer=(int*)malloc(N*sizeof(int));
napolni(N, buffer);
for(i=0;i<N;i++)
printf("%d\n", buffer[i]);
maximum=max(N, buffer);
printf("Maksimum je: %d\n", maximum);
free(buffer);
scanf("%d", &m);
return 0;
}
Zakaj mi v vrstici kjer je glava metode "max" vrne syntax error: "type"??
Vredno ogleda ...
| Tema | Ogledi | Zadnje sporočilo | |
|---|---|---|---|
| Tema | Ogledi | Zadnje sporočilo | |
| » | Qt/QML zajem podatkov iz podatkovne baze, dobim samo opise fieldov ter prazne vrednosOddelek: Programiranje | 1966 (1709) | windigo |
| » | [Qt/C++]problem z Undefined reference na konstanti znotraj razredaOddelek: Programiranje | 2643 (2313) | phantom |
| » | [C] Sinhronizacija procesovOddelek: Programiranje | 1300 (1173) | Cvenemir |
| » | [C] ProcesiOddelek: Programiranje | 1100 (1009) | Cvenemir |
| » | [NALOGA][C] - Sortiranje učencevOddelek: Programiranje | 1490 (1343) | m4r3 |