Sziasztok!
szeretnék csinálni egy a printf paraméterezéséhez hasonló függvényt. Nézegetem a printf deklarációját, de nem nagyon látom át. esetleg tudna valaki segíteni, hogyan tudnám megoldani ezt?
do_it (?????)
{
//itt pedig kiíratnánm a képernyőre (vagy ahová akarom) a formázott szöveget
}
int
main()
{
do_it("hello: %s %d\n",str,x);
}
- 1356 megtekintés
Hozzászólások
int printf(const char *format, ...);
Mi nem ertheto? A printf-t csereld ki do_it -ra vagy akarmire es kesz.
man stdarg segit, ha nem ertesz a valtozo parameter listahoz.
- A hozzászóláshoz be kell jelentkezni
szuper! köszi, kb ennyi kellet a továbbhaladásomhoz. köszi!!
- A hozzászóláshoz be kell jelentkezni
Célszerű a paraméter ellenőrzést is használni:
int do_it(int sajat1, int sajat2, const char *format, ...) __attribute__ ((format (printf, 3, 4)))
- A hozzászóláshoz be kell jelentkezni
Nem hiszem, hogy ugyanazt az argumentum-kodolast hasznalja, mert akkor nem kene kulon fuggveny. Ha megis, akkor bizony erdemes, majd kapsz warning-ot forditaskor.
- A hozzászóláshoz be kell jelentkezni
Így van, tök jogos, én is melegen ajánlom a format attribútumot.
Ha C++-ban dolgozol, és egy metódusról van szó, akkor még arra kell ügyelni, hogy van egy rejtett ,,this''-paraméter, ami miatt a számokat egyel meg kell növelni. :)
- A hozzászóláshoz be kell jelentkezni
Ha jol sejtem argumentumlistat akarsz letrehozni.
http://www.cprogramming.com/tutorial/lesson17.html
Annyi kulonbseggel, hogy neked az stdarg.h headert kell betoltened es va_list lesz a te baratod. :-)
---------------------
Ригидус а бетегадьбол
- A hozzászóláshoz be kell jelentkezni
Megkestel vagy 2 oraval...
- A hozzászóláshoz be kell jelentkezni
köszi! minden segítséget szívesen veszek ám! főleg ha bővebb mint a man :-)
- A hozzászóláshoz be kell jelentkezni
na most jól beégettem saját magam, mert pont az stdarg manjában van egy pont olyan példa ami nekem kell :-)
- A hozzászóláshoz be kell jelentkezni