Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

array size too large

[es] :: C programiranje :: array size too large

[ Pregleda: 755 | Odgovora: 7 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

brankec
Bosanski Brod

Član broj: 140157
Poruke: 109
*.teol.net.



Profil

icon array size too large22.02.2008. u 21:26

Sledeci primer ilustruje moj problem:

typdef struct
{
/*ovde se nalaze CHAR promenjive ukupne velicine 148 bajta*/
}PODACI;

PODACI s[2000];

I kada hocu kompajlirati izbaci mi poruku ARRAY SIZE TOO LARGE. Sta da radim.

Koristim TURBO C 2.1.
22.02.2008. u 21:26 

burex
Freelancer, Local community network administrator
46°05'N 19°39'E

Član broj: 24964
Poruke: 317
193.34.64.*



Profil

icon Re: array size too large23.02.2008. u 00:43
Smanji broj članova niza, a ako ti je baš potrebna tolika veličina, koristi linkovane liste:
http://en.wikipedia.org/wiki/Linked_list
A man is smart. People are stupid.
My blog
23.02.2008. u 00:43 

glorius
Damir Nikolic
Developer, Seavus D.O.O.
YU

Član broj: 4366
Poruke: 238
79.101.196.*



Profil

icon Re: array size too large23.02.2008. u 12:35
Dinamicki alociraj memoriju...
EOF
23.02.2008. u 12:35 

brankec
Bosanski Brod

Član broj: 140157
Poruke: 109
*.teol.net.



Profil

icon Re: array size too large24.02.2008. u 14:05
Nesto mi je nejasno u vezi linkovanih (povezanih) lista:
Ako podatke ucitavam iz fajla i za to imam odgovarajucu strukturu gde smestam podatke i sad u tu strukturu dodam jos jednu pokazivacku promenjivu koja ce mi pokazivati na sledeci pokazivac u listi, zar mi to nece poremetiti ucitavanje podataka iz fajla. Ako ne, zasto ne. Ako da , sta onda da radim.
24.02.2008. u 14:05 

obucina
Beograd

Član broj: 38191
Poruke: 594
213.137.123.*



Profil

icon Re: array size too large25.02.2008. u 09:41
Nece, ali ce ti pokazivaci biti neispravni, tako da moras pri ucitavanju svakog elementa da azuriras pokazivace na sledeci/prethodni element liste.
25.02.2008. u 09:41 

n1tr0
Student of Software Engineering
Cortanovci

Član broj: 55279
Poruke: 337
*.ns.ac.yu.

Sajt: blog.bloggernauts.net


Profil

icon Re: array size too large27.02.2008. u 08:21
Prilikom snimanja podataka iz strukture u fajl nemoj upisivati pokazivace. Kada budes citao, alociraj memoriju za tu strukturu i onda azuriraj pokazivace. Najlakse ti je da napravis jednu f-ju koja ce ti dodavati element te strukture podataka na kraj (ili pocetak te liste).
http://n1tr0.bloggernauts.net - n1tr0's blog
http://blog.bloggernauts.net - My Tech (B)log
http://www.google.com - pre postavljanja glupih pitanja
27.02.2008. u 08:21 

brankec
Bosanski Brod

Član broj: 140157
Poruke: 109
*.teol.net.



Profil

icon Re: array size too large27.02.2008. u 20:00
Sve mi je jasno sa alociranjem memorije i azuriranjem pokazivaca, ali sledece mi nije jasno:
ako imam STRUKTURU i u njoj 15 CHAR promenjivih plus pokazivacka promenjiva, kako onda da zapisem u fajl strukturu ali bez pokazivaca. Dali moram onda svaku promenjivu strukture pojedinacno upisivati ili ima nesto drugo. Ako citavu strukturu upisujem u fajl onda bih to uradio ovako :
fwrite(*s,sizeof(PODACI),1,fptr);
27.02.2008. u 20:00 

brankec
Bosanski Brod

Član broj: 140157
Poruke: 109
*.teol.net.



Profil

icon Re: array size too large27.02.2008. u 21:01
Sledeci program je pokusaj ucitavanja podataka iz baze u program (strukturu).
Zbog STRUCT CVOR *SLEDECI mi se podaci ne ucitavaju kako treba (ako izbacim tu liniju koda i sledecu: -novi->sledeci=pocetak;- podaci se ucitavaju kako treba). Molim pojasnjenje ili primer koda.
Sledeci problem kod istog programa, a i kod svih ostalih koje sam pokusavao napraviti a vezani su za ovu temu je sledeci: liniju koda -printf("\n %s",novi->neto);- sam ubacio kako bih kontrolisao sta ucitavam. Medjutim, umesto da mi ispise samo znakove CHAR promenjive NETO duzine 14 znakova (u ovom primeru) on mi ispise sve znakove od neto do kraja (u ovom slucaju CHAR SIFRA). Ili ako bih stavio -printf("\n %s",novi->radnik);- ispisujemi sve znakove od RADNIK pa do SIFRA. Kako da ovo resim.

Code:

#include <stdio.h>
#include <stdlib.h>
typedef struct cvor
{
char indikator;
char radnik[6];
char stavka[2];
char oour[2];
char grupa[5];
char rad[2];
char algodb[1];
char algdop[1];
char stad[1];
char prebiva[2];
char tekmes[2];
char tekobr[2];
char bod[10];
char sati[3];
char koefa[7];
char vrboda[13];
char pojkoef[7];
char ucinak[7];
char n6[10];
char neto[14];
char bruto[15];
char obr[1];
char ggmm[4];
char prepravi[12];
char pravi_neto[12];
char sifra[6];
struct cvor *sledeci;
}PODACI;

PODACI *pocetak,*novi;

int main(void)
{
FILE *fptr;
int i=0;
pocetak=NULL;
fptr=fopen("ldprizar.dbf","r");
fseek(fptr,832,SEEK_SET);
while(i<8)
{
novi=malloc(sizeof(PODACI));
fread(novi,sizeof(PODACI),1,fptr);
novi->sledeci=pocetak;
pocetak=novi;
printf("\n %s",novi->neto);
i++;
}
printf("\n\n");
getchar();
fclose(fptr);
return (0);
}
27.02.2008. u 21:01 

[es] :: C programiranje :: array size too large

[ Pregleda: 755 | Odgovora: 7 ]

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.