黑马程序员技术交流社区

标题: 这个程序 错到哪了?求解 [打印本页]

作者: chad8753    时间: 2015-9-12 12:01
标题: 这个程序 错到哪了?求解
#include <stdio.h>
#include <conio.h>
#include <string.h>


/**
* 除了字符串前导和尾部的*外,将字符串中的其他*号全部删除
*/


main()
{
        char *t, *f;
        void fun( char, char, char );


        char s[] = "*************jahdjw8e78a888****asdh88**JAHD88**hjdh*****";
        puts( s );
        printf( "%s\n", s );
        t = f = s;
        while ( *t )
                t++;
        t--;
/* 指向字符串的最后一个字母 */
        while ( *t == '*' )
                t--;
/* 指向字符串的第一个字母 */
        while ( *f == '*' )
                f++;
        printf( "%c,%c\n", *f, *t );
        fun( s, f, t );
        printf( "操作完之后的字符串:%s\n", s );
}


void fun( char *a, char *h, char *p )
{        //printf("ceshi");
        char        *b;
        int        i = 0;
        b = a;
        while ( b < h )
        {
                a[i] = * b;
                b++;
                i++;
        }

/* 继续遍历 */
        while ( b < p )
        {
                if ( *b != '*' )
                {
                        a[i] = *b;
                        i++;
                }
                b++;
        }
        while ( *b )
        {
                a[i] = *b;
                i++;
                b++;
        }
        a[i] = '\0';
}


作者: 还是那个他    时间: 2015-9-12 21:04
fun函数在main函数中声明有问题




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2