两抵 发表于 2008-6-23 15:15

函数指针 怎么连不上,谁来解决下~,嗯,谢了~~~

#include <stdio.h>
#include <string.h>
char revstr(char *p);
void main()
{
        char *str[200];
        printf("请输入一个字符串: \n");
        gets(str);
        revstr(str);
        printf("调换顺序后的字符串为:%s\n",str);

}
char revstr(char *p)
{
        char ch,str[200],*q;
        p=str;
        q=p+strlen(p)-1;
        while(p<q)
        {ch=*p;
        *p++=*q;
        *q--=ch;}
        return (str);
}

界水乘风 发表于 2008-6-23 15:29

哪里有函数指针?[tk02]

kongwei254 发表于 2008-6-23 17:05

名字冲突

now 发表于 2008-6-23 19:29

[code]#include <stdio.h>
#include <string.h>
void revstr(char *p);
void main()
{
    char str[200]; //此处;
    ...........
}
void revstr(char *p) //对revstr()函数进行了一定修改;
{
    char ch,*q;   
    q=p;
    while(*q)
        q++;
    q--;
    while(p<q)
    {ch=*p;
    *p++=*q;
    *q--=ch;
    }
}[/code]

wuyufeixue 发表于 2008-6-24 01:16

#include <stdio.h>
#include <string.h>
void revstr(char *p);
void main()
{
    char str[200];
    printf("请输入一个字符串: \n");
    gets(str);
    revstr(str);
    printf("调换顺序后的字符串为:%s\n",str);

}
void revstr(char *p)
{
    char ch,*q;
   
    q=p+strlen(p)-1;
    while(p<q)
    {ch=*p;
    *p++=*q;
    *q--=ch;}
   
}

dai77848400 发表于 2008-6-24 06:58

char *str[200];
就错了  你在后面怎么能这样输出了 printf("调换顺序后的字符串为:%s\n",str);
str是一个指针数珠   STR是一个常量指针

StarWing83 发表于 2008-6-24 06:59

这样的代码没有警告?LZ不是用的GCC……

页: [1]

编程论坛