| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1310 人关注过本帖
标题:编译调试无问题,运行出错,求大神指点啊!
取消只看楼主 加入收藏
upsate
Rank: 2
等 级:论坛游民
帖 子:14
专家分:21
注 册:2011-12-26
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:3 
编译调试无问题,运行出错,求大神指点啊!
程序代码:
#include<stdio.h>
#include<stdlib.h>
struct node *LinkListCreate();
struct node *BubbleSort(struct node *Header);
void print(struct node *Header);
struct node
{
    long int data;
    struct node *next;
};
int main()
{
    struct node *Header;
    Header = LinkListCreate();
    Header = BubbleSort(Header);
    print(Header);
    return 0;
}
struct node *LinkListCreate()
{
    struct node *Header = NULL;
    struct node *p1, *p2;
    int n = 0;
    char *string,*stopstring;
    p1 = (struct node *)malloc(sizeof(struct node));
    printf("Please input an integer number:\n");
    scanf("%s",string);  //实际输入当作字符串处理          这里出问题了,说string未初始化,但是不知道是怎么回事
    p1->data = strtol(string,&stopstring,10);
    p2 = p1;
    while (('q' != *stopstring)||('Q' != *stopstring))
    {
        n = n + 1;
        if (1 ==n)
            Header = p1;
        else
            p2->next = p1;
        p2 = p1;
        p1 = (struct node *)malloc(sizeof(struct node));
        printf("Please input an integer number:\n");
        scanf("%s",string);
      
     }
    p2->next = NULL;
    return (Header);
}

struct node *BubbleSort(struct node *Header)
{
    struct node *p1,*p2;
    long int temp;
    if (NULL == Header)
    {
        printf("The linked list is Null!");
        return Header;
    }
    for (p1 = Header; NULL != p1->next;p1++)
    {
        for (p2 = p1->next;NULL != p2;p2++)
        {
            if (p1->data < p2->data)
            {
                temp    = p1->data;
                p1->data = p2->data;
                p2->data = temp;
            }
        }
        Header = p1;
    }
    return (Header);
}
void print(struct node *Header)
{
    struct node *p;
    printf("The sorted number is:\n");
        p = Header;
        if (NULL != Header)
        do
        {
            printf("%ld ",p->data);
            p = p->next;
        }while (NULL != p);
}

求大神指点啊!
2012-03-18 12:23
upsate
Rank: 2
等 级:论坛游民
帖 子:14
专家分:21
注 册:2011-12-26
收藏
得分:0 
回复 3楼 zaixuexi
error C2440: “=”: 无法从“void *”转换为“char”        35    1    TRY
IntelliSense: 不能将 "void *" 类型的值分配到 "char *" 类型的实体     35    18    TRY

改过之后就有这样的问题,不是很清楚;麻烦大神再帮忙看下。
非常感谢!
2012-03-18 18:47
upsate
Rank: 2
等 级:论坛游民
帖 子:14
专家分:21
注 册:2011-12-26
收藏
得分:0 
回复 8楼 moonnight
谢谢啦!
2012-03-19 20:35
upsate
Rank: 2
等 级:论坛游民
帖 子:14
专家分:21
注 册:2011-12-26
收藏
得分:0 
回复 7楼 TonyDeng
小弟新手,编写的代码很少,还望版主息怒。
谢谢!
2012-03-19 20:48
快速回复:编译调试无问题,运行出错,求大神指点啊!
数据加载中...
 
   



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

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