提问一下这两个指针的区别
  • 板块灌水区
  • 楼主foracm
  • 当前回复4
  • 已保存回复4
  • 发布时间2022/12/15 00:33
  • 上次更新2023/10/24 07:41:10
查看原帖
提问一下这两个指针的区别
912901
foracm楼主2022/12/15 00:33

如下,注释的地方为借助的第二个指针,想直接这样只用一个p指针完成这题,但是会有一个测试点不通过"最长字符串,要删除的都在中间和两端".在一个同学那里得到的答案是p是一块临时空间不能对他做cpy.但是经历while循环以后p和cur的地址不是一样的吗.希望有大佬指点一下是哪里有问题


有可以不用函数解决的方法,但是碰巧多试了几种,想明白其中的原因.


题目为A-B,浙大那道.

#include<stdio.h>
#include<string.h>
#define N 10010
int main()
{
    char A[N],B[N];
    scanf("%[^\n] %[^\n]", &A,&B);
    char* p = malloc(sizeof(char));
    for( int i=0; B[i]!='\0'; i++ )
    {
        while( p = strchr(A,B[i]) )
        {
            /*char * cur = A;
            while (cur != p) cur++;*/
            strcpy(p,p+1);
        }
    }
    printf("%s", A);
    
    return 0;
}
2022/12/15 00:33
加载中...