Új hozzászólás Aktív témák
-
tototos
addikt
válasz
buherton #3824 üzenetére
És olyat nem lehet hogy ne a fv visszatérési értéke legyen a változó?
ilyenre gondolok:
valami.c:
fooTypeDef localfoo;
void set(const fooTypeDef * const foo)
{
foo.ifoo=0; //ez csak egyszer hívódik meg
}
void get(const fooTypeDef ** const foo)
{
localfoo.cfoo = a+b; //ez az értékadás minden hívásnál megtörténik
*foo= &localfoo;
}
main.c //ezt hívják majd a fejlesztők
footypedef* myfoo;
get(&myfoo);
myfoo->ifoo = 5; //erre vagy hiba vagy ne hajtódjon végre
myfoo->cfoo = 4; // ez annyira nem nagy hiba mert a legközelebbi hívásnál úgyis felülíródik -
buherton
őstag
válasz
buherton #3824 üzenetére
Ami kimaradt: így a get függvények belül egyik adattagot sem lehet írni, csak és kizárólag olavsni. Az set-get-es függvényeknek azaz előnyük, hogy szabadon lehet változtatni az összes adattagját, viszont get a függvénnyel egyesével tudsz értékeket olvasni. Kivéve ha nem kókányolsz íly módon:
#include <stdlib.h>
#include <stdio.h>typedef struct
{
int ifoo;
char cfoo;
} fooTypeDef;int get(const fooTypeDef * const foo, int * const ibar, char * const cbar)
{
*ibar = sfoo->ifoo;
*cbar = sfoo->cfoo;
}int main(void)
{
fooTypeDef sfoo;sfoo.ifoo = 10;
sfoo.cfoo = 'a';int ibar;
char cbar;get(&sfoo, &ibar, &cbar);
printf("%i %c", ibar, cbar);return 0;
}Vagy valami ilyesmi lesz.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Kompakt vízhűtés
- CPU léghűtés kibeszélő
- Kerékpárosok, bringások ide!
- Házimozi haladó szinten
- Projektor topic
- Vélemény: nem úgy tűnik, de Lip-Bu Tan most menti meg az Intelt
- Milyen notebookot vegyek?
- Információbiztonság, kiberbiztonság, adatvédelem
- Fúziós energiát vásárol a Google
- Mibe tegyem a megtakarításaimat?
- További aktív témák...
- Dell Latitude 5450 Intel Core Ultra 5 135U 4nm 32GB DDR5 érintőképernyős laptop Dell gari 2027.09.hó
- PlayStation 4/5 kontroller analóg cseréje HALL TMR érzékelősre, 1 év garancia!!! Nincs többé drift!!
- PlayStation 5/4 kontroller analóg cseréje HALL TMR érzékelősre, 1 év garancia!!! Nincs többé drift!!
- XBOX ONE/Series kontroller analóg cseréje HALL TMR érzékelősre, 1 év garancia!!! Nincs többé drift!!
- XBOX Series S 512GB, 6 hó garanciával Bp-i üzletből eladó!
- Azonnali kézbesítés az év bármely pillanatában
- Dell latitude, precision, xps, magyar világítós billentyűzetek eladóak
- Samsung Galaxy Z Fold5 , 12/256 GB , Kártyafüggetlen
- Telefon felvásárlás!! iPhone X/iPhone Xs/iPhone XR/iPhone Xs Max
- DOKKOLÓ BAZÁR! Lenovo, HP, DELL és egyéb más dokkolók (TELJES SZETTEK)
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: PC Trade Systems Kft.
Város: Szeged