| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 333 人关注过本帖
标题:继续K&R的练习疑惑。。。CP木有解决掉,希望bccn的大家能够帮忙看下
取消只看楼主 加入收藏
stupidsteve
Rank: 1
来 自:赛博坦星
等 级:新手上路
帖 子:18
专家分:3
注 册:2011-4-8
结帖率:66.67%
收藏
已结贴  问题点数:20 回复次数:1 
继续K&R的练习疑惑。。。CP木有解决掉,希望bccn的大家能够帮忙看下
还是在做K&R的练习题

其中在调用这个function的时候每每出错,虽然compile的过程没有一点问题。。。

/*printarray function*/
void printarray (int temp[], int digitnumber)
{
    int i;

    for(i=0; digitnumber>0; --digitnumber)
    {
        putchar(temp[i]);
        ++i;
    }
    printf("\n");
}

错误都是“Access violation...”看来应该是数据地址的问题。。。

把整段code都贴出来,希望各位能够帮我看下到底是哪里出了问题。。。

PS, 麻烦请不要说“初始化为毛不用pointer啊你。。。”,我就是想做个基础练习然后每每都失败的苦逼一枚。。。

#include <stdio.h>
#include <stdlib.h>
#define MAXLINE 100000

void printarray (int temp[], int digitnumber);


main()
 {
    int digit, temp[MAXLINE];
    int nd,i ;

    nd=digit=0;
    for(i=0; i<MAXLINE; ++i)
    {
        temp[i]=0;
    }

    while((nd=getchar())!=EOF)
    {
        if(nd!='\n')
        {
            temp[digit]=nd;
            ++digit;
        }
        else
        {
            printarray(temp, digit);
        }
    }
    return 0;
}

/*printarray function*/
void printarray (int temp[], int digitnumber)
{
    int i;

    for(i=0; digitnumber>0; --digitnumber)
    {
        putchar(temp[i]);
        ++i;
    }
    printf("\n");
}

先谢谢大家喽~

[ 本帖最后由 stupidsteve 于 2011-4-10 21:45 编辑 ]
搜索更多相关主题的帖子: function 练习题 
2011-04-10 21:43
stupidsteve
Rank: 1
来 自:赛博坦星
等 级:新手上路
帖 子:18
专家分:3
注 册:2011-4-8
收藏
得分:0 
回复 3楼 voidx
后来我把调用两个函数的变量由temp[]改变为了temp,通过单纯调用首地址就能够成功了:)

谢谢你啦~

PS,为啥不用VS了呢?我怎么觉得还算不错。。。。

How can we win, when fools can be kings?
2011-04-11 09:44
快速回复:继续K&R的练习疑惑。。。CP木有解决掉,希望bccn的大家能够帮忙看下 ...
数据加载中...
 
   



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

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