| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1116 人关注过本帖
标题:大佬看看这个代码错误在哪,调试一直错
取消只看楼主 加入收藏
Gband
Rank: 1
等 级:新手上路
帖 子:41
专家分:7
注 册:2017-10-13
结帖率:88.89%
收藏
 问题点数:0 回复次数:0 
大佬看看这个代码错误在哪,调试一直错
图片附件: 游客没有浏览图片的权限,请 登录注册



程序代码:
#define _STDC_WANT_LIB_EXT1_1
#include "stdio.h"
#include "string.h"
#include "stdlib.h"
#define capacity 50
int main(void)
{
    char *p = (char*)malloc(capacity);
    char delimiters[] = " \" ,;:)( ";
    char **temp = NULL;
    char **buf = NULL;
    char *pstr = NULL;
    char *ptr = NULL;
    int num = 0;
    int add = 0;
    int flag = 0;

    printf("请输入一串字符:\n");
    fgets(p, capacity, stdin);
    do{
        if (num == add)
        {
            add += 3;
            temp = (char**)malloc(add);
            for (int i = 0; i < add; i++)
                *(temp + i) = (char*)malloc(capacity);
            if (buf)
            {
                for (int i = 0; i < num; i++)
                    temp[i] = buf[i];
                free(buf);
            }
            buf = temp;
            free(temp);
            temp = NULL;
        }
        if (!flag)
        {
            pstr = strtok_s(p, delimiters, &ptr);
            strcpy_s(*(buf + num++), capacity, pstr);
        }
        else
            strcpy_s(*(buf + num++), capacity, pstr);
        flag = 1;
    } while ((pstr = strtok_s(NULL, delimiters, &ptr)) != NULL);
    for (int i = 0; i < num; i++)
        printf("%s", *(buf + i));
    free(buf);
    buf = NULL;

    free(p);
    p = NULL;
    return 0;
}

搜索更多相关主题的帖子: int char temp NULL num 
2017-11-04 10:43
快速回复:大佬看看这个代码错误在哪,调试一直错
数据加载中...
 
   



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

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