» »

[C] strukture

[C] strukture

OmegaM ::

Mene pa zanima kako se vpise v strukturo nekaj?
Mam vajo kjer moram napisati evidenco o n-projektih pa se mi je malo ustavilo.
mam tako strukturo
struct Objekti
{
char objekt[25];
int stevilo_obj;
};

void main()
{
int a,..

....
in tako pridem do tega pogoja za vpis
while (vpis!=n) //za ponavljanje dokler ne vpisem n
  • spremenil: Gundolf ()

Vesoljc ::

do "članov" (memberjev) v strukturah in objektih (struct & class) dostopamo z magično piko ".".

struct Projekt
{
int verzija;
char ime[32];
};

int main()
{
Projekt win64;
win64.verzija = 100;
strcpy(win64.ime,"Win64");
}
Abnormal behavior of abnormal brain makes me normal...

BigWhale ::

V nekaterih bizarnih primerih celo z ->

;)

OmegaM ::

Ce folk seveda ne bi vedel, da je to -> (kazalec)

OmegaM ::

Kak pa bi lahko nakljucno z funkcijo rand nakljucno razdelil karte (52 jih je),ce mas teh 52 kart inicializiranih ze v nekem polju karte[52]?!
Pa kak bi naredo da bi vsak dobil karto da se ne bi ponovila

OwcA ::

rand() omejiš na interval od 0 do 51. Za vsako vrednost, ki ti jo izpljune vrneš karto, ki ji pripada ta ključ, nato pa vrednost nastaviš na 0(ali nekaj podobno izpovednega). Ko nanese, da bi moral vrniti 0 namesto karte, enostavno ponovno popraskaš rand() in to ponavljaš dokler ne dobiš nečesa uporabnega. Opozarjam pa, da je tole zelo "trotel-ziher" pristop, ki bo lahko imel nekaj težav, ko bo neničelnih celic malo (so pa izboljšave trivijalne, zato je skrb odveč).
Otroška radovednost - gonilo napredka.

BigWhale ::

Owca:

Kaj pa ce bi karte na random pometal v array in ga potem kar po vrsti 'raztalal' :)

OwcA ::

@BigWhale: tako je težje implementirati goljufanje. >:D
Otroška radovednost - gonilo napredka.

OmegaM ::

kak pa bi lahko naredil da bi mi karte tak delilo da ne bi igralec imel ene ali vec enakih

Vesoljc ::

to bi lahko naredu z seznamom

- nafilaš seznam
- izbereš random karto (0-51)
- odstraniš karto iz seznama
- izbereš random karto (0-50)
- repeat until seznam is empty

kot seznam lahko uporabiš recimo std::vector
Abnormal behavior of abnormal brain makes me normal...

slovencl ::

Mene pa zanima, če hočem vse vrednosti v strukturi postavit na nič, a lahko to naredim v enem koraku (kako?), a moram vsakega člana klicat in mu dat vrednost 0 ?

OwcA ::

Če je tip sestavljen iz samih primitivnih tipov, lahko poskusiš z memset().

Nekako tako:

struct Foo
{
  int a;
  float b;
};

...

Foo bar;
memset(&bar, 0, sizeof(Foo));

Otroška radovednost - gonilo napredka.

Zgodovina sprememb…

  • spremenilo: OwcA ()

Gundolf ::

Ali pa če nadgradim, kar je Owca načel:

Foo bar = {0};


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[C] Seznam s poljem

Oddelek: Programiranje
232473 (1953) aceton
»

[C] struct in int[] (strani: 1 2 )

Oddelek: Programiranje
657387 (6460) MrBrdo
»

[java] funkcija ekvivalentna print_r v PHP

Oddelek: Programiranje
161684 (1447) sverde21
»

Klondike (strani: 1 2 )

Oddelek: Programiranje
586058 (5400) Thomas
»

C problemček

Oddelek: Programiranje
131074 (877) OwcA

Več podobnih tem