parameter 和 argument 的区别

parameter和argument从字面翻译上都可以翻译为“参数”,那么二者有什么区别呢?以前总是傻傻分不清楚,不过今天翻看C89标准,并参考网上其他信息,总算搞清楚了。简单说来,parameter一般指形参,而argument一般指实参。(什么?形参实参是啥?这位同学下课之后请到我办公室来一趟……)

下面是C89英文文档里的原文和参考翻译(翻译如有误还请见谅):


3.2 argument. An expression in the comma-separated list bounded by the parentheses in a function call expression. or a sequence of preprocessing tokens in the comma-separated list bounded by the parentheses in a function-like macro invocation. Also known as “actual argument” or “actual parameter.”

argument:指函数调用表达式中用括号括起来并用逗号分隔的一系列表达式,或者类似于函数的宏调用中的用括号括起来并以逗号分隔开的一系列预处理符号。也叫做“实际参数”。


3.15 parameter. An object declared as part of a function declaration or defnition that acquires a value on entry to the function. or an identilier from the comma-separated list bounded by the parentheses immediately following the macro name in a function-like macro detinttion Also known as “formal argument” or “formal parameter.”

parameter:指作为具有入口值函数的声明或定义的一部分的一个对象,或是跟在类似于函数的宏定义的宏名之后,由括号括起来并用逗号分隔开的标识符。也叫做“形式参数”。


在不严格的情况下两者可以混用,但是习惯上使用argument而不是parameter,后者不常用。

你可能感兴趣的:(parameter,形参,实参,Argument)