引用初始化
今天写了这么个小程序都报错,不知道什么原因啊,看了网上都是这么写的,我的编译器就是不通过
#include "stdio.h"
int main()
{
int i = 5;
int &r = i;
printf("%d", r);
return 0;
}
error c2143: syntax error: missing ';' before '&'
warning c4091: ' ' : ignored on left of 'int ' when no varible is declared
warning c2065: 'r': undeclared identifier
warning c4047: '=': 'int *' differs in levels of indirection from 'int '
error c2106: '=' : left operand must be l-value
[解决办法]
C语言是没有引用的
C++语言才有的。你在C++编译器环境下可以通过
[解决办法]
- C/C++ code
#include<iostream>using namespace std;int main(){ int i = 5; int &r = i; cout<<r<<endl; return 0;}
[解决办法]
把你的文件名由.c改为.cpp试试.
[解决办法]
恩,引用只有C++有,换个C++编译环境
[解决办法]
C中不支持引用(int &b=a)
[解决办法]
你们错了,C不是不支持引用,只是不能用引用来作左值
这样写
#include "stdio.h"
int main()
{
int i = 5;
int *r = i;
printf("%d", *r);
return 0;
}