je_clenem()?
David Zabensky
zabensky na ica.cz
Pátek Únor 25 11:45:31 CET 2000
Tak tohle prelozim pod CC, ale uz ne pod GCC (krici, ze to neni dle ANSI C).
Mozna by to spravil nejaky parametr pro prekladac. Spise ale #ifdef
_linux_....
D.
--
const int je_clenem(va_alist) va_dcl
{
int found = 0;
int iVal, iArg;
char cVal, cArg;
char *sVal, *sArg;
va_list arg;
VARARGS typ;
va_start(arg);
typ = va_arg(arg, VARARGS);
switch(typ) {
/* zpracovavam argumenty typu int */
case vaINT: {
/* nactu hledanou hodnotu */
iVal = va_arg(arg, int);
/* porovnavam dalsi hodnoty */
while(iVal && found == 0 && (iArg = va_arg(arg, int)) != (int) NULL)
if(iArg == iVal) found = 1;
break;
}
/* zpracovavam argumenty typu char * */
case vaSTRING: {
sVal = (char *) va_arg(arg, char *);
while(sVal && found == 0 && (sArg = (char *) va_arg(arg, char *)) !=
(char *) NULL)
if(strcmp(sVal, sArg) == 0) found = 1;
break;
}
}
va_end(arg);
return found;
}
:Poslete kod funkce je_clenem. Tohle by melo fungovat i kdyz s problemy
nebot
:va_xxx marka mohou byt na kazde platforme definovana ruzne (a s ruznym
:poctem parametru).
:
:--
:
:Jan Bares
:(remove no.spam from my email address)
:JPCAD Graphics Engine developer, surf to http://www.antek.cz
:
:
:
:---------------------------------------------------------------------------
:Meta-FAQ (odhlá±ení, archív, FAQ a dal±í): http://www.linux.cz/mailing-list
Daląí informace o konferenci Linux