2 xu315984912 xu315984912 于 2014.10.18 09:12 提问

大神进来看,本人新学者,郁闷中啊!

#include
using namespace std;
void main()
{
int a;
pa(5, 5);
}

int pa(int n,int t)
{

int a; int n, t;
for (int i = 0; i < n - 1; i++)
{

cin >> a[i];
}
for (t = n; t>0; t--)
{
cout << a[t] << " ";
}
}

我是想做一个倒序输出并且将它函数化,但是不知道为什么会有a后面的中括号里面的东西会说明表达式必须包含指向对象的指针类型,我初学请大神求教啊

5个回答

Sounds_Of_Life
Sounds_Of_Life   2014.10.27 00:52

你这代码有问题吧, 因为你的函数已经带了 参数n和t 然后你在函数里面 还定义的n和t ,而且a是int 类型数据 ,不是数组,当然会报错

xiahzp
xiahzp   2014.11.05 21:13

楼上说的对!pa函数里面参数定义有问题。

CodeHeng
CodeHeng   2014.11.17 10:10

倒序输出
void sort(int *a, int n)
{
int i,j;

for (i=0; i<n-1; i++)
for (j=i+1; j<n; j++)
{
a[i] = a[i]+a[j];//交换
a[j] = a[i]-a[j];
a[i] = a[i]-a[j];
}
}

starytx
starytx   Rxr 2014.12.09 16:05

问题很多,先找个基础书看看吧,a不是数组不可以使用下标操作,函数内部的变量名和形参重名了,形参失去了作用

happyparrot
happyparrot   Ds   Rxr 2014.12.23 08:04

a根本不是数组,怎么能用下标呢?

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!