gcc
即使将此文件另存为check.c
. 错误在这一void swap_address(int& a, int& b)
行
错误:在 '&' 之前应为 ';'、',' 或 ')' 令牌
我已经使用这个命令来编译 C 文件:gcc -o check check.c
g++
但是如果我使用以下编译器,相同的代码可以正常工作:g++ -o check check.c
请告诉我为什么它适用于g++
而不适用于gcc
.
编码:
#include <stdio.h>
void swap_value(int a, int b)
{
a=a+b;
b=a-b;
a=a-b;
}
void swap_address(int& a, int& b)
{
a=a+b;
b=a-b;
a=a-b;
}
int main()
{
int i=5,j=3;
swap_value(i,j);
printf("%d%d\n", i, j);
swap_address(i,j);
printf("%d%d\n", i, j);
return 0;
}