帮忙看看这段简单的C++程序的错误是什么意思,怎么修改!!!
用指针从小到大排列10个数。#include<iostream.h>intmain(){voidsort(int*);inta[10];for(inti=0;i<10;i...
用指针从小到大排列10个数。
#include<iostream.h>
int main()
{
void sort(int *);
int a[10];
for(int i=0;i<10;i++)
cin>>a[i];
sort(a);
for(i=0;i<10;i++)
cout<<a[i];
}
void sort(int *p)
{
int t,k;
for(int i=0;i<9;i++)
{
k=i;
for(int j=i+1;j<10;j++)
if(*(p+k)>*(P+j))
k=j;
t=*(p+i);
*(p+i)=*(p+k);
*(p+k)=t;
}
}
if(*(p+k)>*(P+j))这段有错误,
E:\Debug\ekhg.cpp(20) : error C2065: 'P' : undeclared identifier
E:\Debug\ekhg.cpp(20) : error C2100: illegal indirection
这两个错误是什么意思啊?我刚学没多长时间不太懂,会的帮忙解释一下这两个错误是什么引起的??
怎么修改? 展开
#include<iostream.h>
int main()
{
void sort(int *);
int a[10];
for(int i=0;i<10;i++)
cin>>a[i];
sort(a);
for(i=0;i<10;i++)
cout<<a[i];
}
void sort(int *p)
{
int t,k;
for(int i=0;i<9;i++)
{
k=i;
for(int j=i+1;j<10;j++)
if(*(p+k)>*(P+j))
k=j;
t=*(p+i);
*(p+i)=*(p+k);
*(p+k)=t;
}
}
if(*(p+k)>*(P+j))这段有错误,
E:\Debug\ekhg.cpp(20) : error C2065: 'P' : undeclared identifier
E:\Debug\ekhg.cpp(20) : error C2100: illegal indirection
这两个错误是什么意思啊?我刚学没多长时间不太懂,会的帮忙解释一下这两个错误是什么引起的??
怎么修改? 展开
展开全部
if(*(p+k)>*(P+j))
这一句错误。你后面的P是大写,和前面的小写不一致。c/c++对大小写敏感,即对大小写当做不同对待。
这一句错误。你后面的P是大写,和前面的小写不一致。c/c++对大小写敏感,即对大小写当做不同对待。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
E:\Debug\ekhg.cpp(20) : error C2065: 'P' : undeclared identifier
P : 未定义标识
注意大小写啊,前面小写p,这里大写P。。。。
P : 未定义标识
注意大小写啊,前面小写p,这里大写P。。。。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
变量P没有定义,只要这个改了第二个错误就没有了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
其实你看看字面意思就明白了 ,P不是凭空跑出来的 用之前申明一下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询