PCD
Reference Parameters
The compiler has limited support for reference parameters. This increases the readability of
code and the efficiency of some inline procedures. The following two procedures are the
same. The one with reference parameters will be implemented with greater efficiency when it is
inline.
funct_a(int*x,int*y){
/*Traditional*/
if(*x!=5)
*y=*x+3;
}
funct_a(&a,&b);
funct_b(int&x,int&y){
/*Reference params*/
if(x!=5)
y=x+3;
}
funct_b(a,b);
Variable Argument Lists
The compiler supports a variable number of parameters. This works like the ANSI requirements
except that it does not require at least one fixed parameter as ANSI does. The function can be
passed any number of variables and any data types. The access functions are VA_START,
VA_ARG, and VA_END. To view the number of arguments passed, the NARGS function can be
used.
/*
stdarg.h holds the macros and va_list data type needed for variable
number of parameters.
*/
#include <stdarg.h>
A function with variable number of parameters requires two things. First, it requires the ellipsis
(...), which must be the last parameter of the function. The ellipsis represents the variable
argument list. Second, it requires one more variable before the ellipsis (...). Usually you will use
this variable as a method for determining how many variables have been pushed onto the
ellipsis.
Here is a function that calculates and returns the sum of all variables:
int Sum(int count, ...)
{
//a pointer to the argument list
va_list al;
int x, sum=0;
//start the argument list
//count is the first variable before the ellipsis
20
相关PDF资料
PCI-EXP-T42G5-N1 IP CORE PCI EXPRESS ORCA 4
PCM18XH2 PROCESSOR MODULE MPLAB-ICE 2000
PCM18XN0 PROCESSOR MODULE FOR ICE2000
PDA-B-24-615-E-2B1-1-C CIRCUIT BREAKER MAG 1P 15A
PFMF.260.2 PFMF PTC FUSE SMT 2.6A 1812
PFNF.200.2 PFNF PTC FUSE SMT 2A 1206
PFRY.375 PTC-FUSE RADIAL 72 VDC
PFSM.150.33.2 FUSE PTC 8A 15V FST-TRIP SMD
相关代理商/技术参数
PCD_09 制造商:MACOM 制造商全称:Tyco Electronics 功能描述:Low Profile PCB Relay PCD
PCD-00173-0C 制造商:Molex 功能描述:ETHERNET CABLE ASSEMBLY
PCD-00173-0E 制造商:Molex 功能描述:Ethernet Cable Assembly
PCD-00173-0H 制造商:Molex 功能描述:ETHERNET CABLE ASSEMBLY
PCD-00173-0K 制造商:Molex 功能描述:ETHERNET CABLE ASSEMBLY
PCD-00174-0C 制造商:Molex 功能描述:ETHERNET CABLE ASSEMBLY 制造商:Molex 功能描述:ETHERNET CABLE ASSEMBLY; Cable Length - Imperial:3ft; Cable Length - Metric:914.4mm; Connector Type A:RJ45 Plug; Connector Type B:RJ45 Plug; Jacket Color:Red; Approval Bodies:CSA / UL; Body Material:PVC; Cable Assembly Type:Ethernet ;RoHS Compliant: NA
PCD-00174-0E 制造商:Molex 功能描述:ETHERNET CABLE ASSEMBLY 制造商:Molex 功能描述:ETHERNET CABLE ASSEMBLY; Cable Length - Imperial:3ft; Cable Length - Metric:914.4mm; Connector Type A:RJ45 Plug; Connector Type B:RJ45 Plug; Jacket Color:Grey; Approval Bodies:CSA / UL; Body Material:PVC; Cable Assembly Type:Ethernet;RoHS Compliant: NA
PCD-00174-0H 制造商:Molex 功能描述:ETHERNET CABLE ASSEMBLY