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

Problem sa STRUCT

[es] :: C/C++ programiranje :: Problem sa STRUCT

[ Pregleda: 2000 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

brankec
Bosanski Brod

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



Profil

icon Problem sa STRUCT20.02.2008. u 22:27 - pre 196 meseci
U DBF bazi podaci se nalaze od recimo 161-tog bajta i duzina jednog rekorda je recimo 33 bajta. Podaci su sledeceg tipa: prvi bajt je indikator izbrisanosti, pa onda

SIFRA RADNIKA - 7 BAJTA - NUMBER
IME - 11 BAJTA - CHAR
NETO PLATA - 14 BAJTA - NUMBER

Mene sada zanima kako da kreiram i definisem STRUKTURU u koju ce se ucitavati gore navedeni podaci. Nije problem za znakovne promenjive ali mi brojne promenjive zadavaju problema. Jer ako INTEGER zauzima 2 bajta, a LONG 4 bajta, kako onda da ucitam podatak od 7 bajta (ili recimo od 9 bajta).

struct
{
? SIF_RAD[?];
char IME[11];
? NETO[?];
}

Moram da kazem da mi je jedan od ciljeva sabrati sve ucitane vrednosti neto po sifri radnika (da budem jasniji: osnovni rad + prekovremeni itd za datu sifru).
Ono sto sam uspio (ali mi nedeluje prirodno) je da ucitam sve vrednosti kao CHAR i onda potrebne konvertujem u BROJ (sa funkciom atoi).

Koliko god odgovor bio jednostavan, meni je u ovom trenutku nepoznat, pa molim za pomoc.

[Ovu poruku je menjao brankec dana 20.02.2008. u 23:37 GMT+1]

[Ovu poruku je menjao brankec dana 20.02.2008. u 23:49 GMT+1]
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4902
*.tekostolac.co.yu.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: Problem sa STRUCT21.02.2008. u 07:15 - pre 196 meseci
brankec,

Vec smo razgovarali na temu DBF tabela i C jezika. Ako nameravas da se ozbiljnije bavis pristupom ovim tabelama u bazi (unos/ispravke/brisanje/pretrage/relaciranje), toplo preporucujem da odustanes od pisanja sopstvenog koda (neka vrsta drajvera) jer je to pravi gubitak vremena i vise ces se baktati problemima "kako nesto uraditi" umesto "sta uraditi".

Moja preporuka je da uzmes Borland C++ Builder, koji je opremljen svim potrebnim za pristup DBF tabelama "out of box", odnosno sve je na jednom mestu.

Ipak, ako je sve to u cilju ucenja, evo ukratko da ti odgovorim na pitanje:

Citat:

Mene sada zanima kako da kreiram i definisem STRUKTURU u koju ce se ucitavati gore navedeni podaci. Nije problem za znakovne promenjive ali mi brojne promenjive zadavaju problema. Jer ako INTEGER zauzima 2 bajta, a LONG 4 bajta, kako onda da ucitam podatak od 7 bajta (ili recimo od 9 bajta).


Sto se tice brojeva koji su zabelezeni kao string u maksimalno 9 bajtova, vec sam ti odgovorio koji tip podataka ce ti odgovarati:
http://www.elitesecurity.org/t311231-0#1862784

Tvoje je da napises kod (ili iskoristis gotovu funkciju) koji ce konvertovati taj string u broj.

Ili jednostavno taj broj i dalje drzi u strukturi kao niz bajtova, pa kad ti bude trebao kao broj, konvertuj u samoj petlji radi sabiranja.

Dakle, oba resenja (long ili niz charova) mogu da posluze.
 
Odgovor na temu

[es] :: C/C++ programiranje :: Problem sa STRUCT

[ Pregleda: 2000 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

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