| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1219 人关注过本帖
标题:关于指针与系统内存冲突的问题
取消只看楼主 加入收藏
as574301858
Rank: 2
来 自:成都
等 级:论坛游民
帖 子:14
专家分:28
注 册:2012-3-16
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:2 
关于指针与系统内存冲突的问题
我写了一个有关指针的程序,是对输入的五个数字进行排序,我用的是选择排序法,但是我一旦用指针表示数组的话,运行时老是出错,就是说我内存分配有[来源:]问题,这是怎么一回事啊,该怎么弄呢?
#include<stdio.h>
void select(int *k,int n);
void main()
{
int a[5];
int i;
printf("input 5 numbers:");
for(i=0;i<5;i++)
scanf("%d",a[i]);
select(a,5);
for(i=0;i<5;i++)
    printf("%d ",a+i);
getchar();
}

void select(int *k,int n)
{
int x,y,t,min;
for(x=0;x<n;x++)
{
min=x;
for(y=x+1;y<n;y++)
if(*(k+min)>*(k+y))
min=y;
if(x!=min)
{
t=*(k+min),*(k+min)=k[x],*(k+min)=t;
}
}
}

搜索更多相关主题的帖子: include numbers 
2012-07-20 19:59
as574301858
Rank: 2
来 自:成都
等 级:论坛游民
帖 子:14
专家分:28
注 册:2012-3-16
收藏
得分:0 
又写了一个还是遇到同样的问题,这次没有粗心了。。(我想解决的是为什么运行程序时输完第一个字符串按下回车,这个程序就出问题了,windows把它关了说内存问题)
void main()
{
    int *a[3];
    int i;
    for(i=0;i<3;i++)
        scanf("%s",a[i]);
    for(i=0;i<3;i++)
        printf("%s\n",a[i]);
    getchar();
}
2012-07-21 21:01
as574301858
Rank: 2
来 自:成都
等 级:论坛游民
帖 子:14
专家分:28
注 册:2012-3-16
收藏
得分:0 
回复 18楼 LShang
所有人的评论中,你说得最明确,并且是回答了我的疑惑,谢谢。
2012-07-26 21:34
快速回复:关于指针与系统内存冲突的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014089 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved