From clc-wiki
Arguments and parameters refer to the variables or expressions passed from the caller of a function (or invoker of a macro) into the function (or macro).
The ISO C Standard supports this distinction:
- argument: that which is passed into a function by its caller (or macro by its invoker)
- parameter: that which is received by the function or macro
although the qualifiers "actual" and "formal" in deprecated usage can change this.
Definitions from the Standard
The C99 Standard defines an argument as 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
and notes the synonyms "actual parameter" (deprecated) and "actual argument".
It defines a parameter as an
object declared as part of a function declaration or definition that acquires a value on entry to the function, or an identifier from the comma-separated list bounded by the parentheses immediately following the macro name in a function-like macro definition
and notes the synonyms "formal argument" (deprecated) and "formal parameter".