home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
cenvi23.zip
/
STRUCT.LIB
< prev
next >
Wrap
Text File
|
1995-03-07
|
1KB
|
32 lines
// Struct.lib - Some useful CEnvi routines for working with structures
// ver.1
//
//**** InitStructArray() - Initialize structure array
// SYNTAX: struct[] InitStructArray(string Member1,string Member2,...,string MemberN,NULL,
// Data01,Data02,...,Data0N,
// Data11,Data12,...,Data1N,...,
// DataX1,DataX22,...,DataXN)
// WHERE: Member?: the structure members for this structure, names end in NULL
// Dataxx: the elements of each structure data
// RETURN: Returns array of all the elements in a structure
// EXAMPLE: Dinner = InitStructArray( "Name", "Entree", "Drink", "Price", NULL,
// "Paul", "Lasagna", "Orange Juice", 8.95,
// "Ann", "Chile Relleno", "Cola", 6.67,
// "Fido", "Bone", "Toilet water", 0.07 );
//
//
InitStructArray(/*lots of possible arguments*/)
{
lTotalArgCount = va_arg();
// determine how many structure members
for ( lMemberCount = 0; va_arg(lMemberCount); lMemberCount++ ) ;
// fill in each member
for ( lIdx = 0, lArg = lMemberCount + 1; lArg < lTotalArgCount; lIdx++ ) {
for ( lMemberIdx = 0; lMemberIdx < lMemberCount; lMemberIdx++, lArg++ )
StructureMember(lArray[lIdx],va_arg(lMemberIdx)) = va_arg(lArg);
}
return lArray;
}