C语言之删除中间的*

复制代码
#include <stdio.h>

void fun(char str[]){
    char *p1,*p2,*p3;
    p1 = str;
    p2=str;
    p3=str;
    while(*p3) p3++;
    p3--;
    while(*p1=='*') p1++;
    while(*p3=='*') p3--;
    p2=p1;
    while(p2<p3){
        if(*p2=='*') {
            p2++;
            continue;
        }
        else *p1++=*p2++;
    }
    while(*p2) *p1++=*p2++;
}

int main(){
    char str[100] = "***A*BC*DEF*G******";
    fun(str);
    printf("%s",str);
}

注意两个条件不能同时用++,要不然会实现两次++

相关推荐
3824278273 分钟前
python3网络爬虫开发实战 第二版:绑定回调
开发语言·数据库·python
小麦嵌入式3 分钟前
Linux驱动开发实战(十三):RGB LED驱动并发控制——自旋锁与信号量对比详解
linux·c语言·驱动开发·stm32·单片机·嵌入式硬件·物联网
星月心城8 分钟前
面试八股文-JavaScript(第五天)
开发语言·javascript·ecmascript
wjs202412 分钟前
PostgreSQL 时间/日期处理指南
开发语言
wniuniu_18 分钟前
ceph心跳机制
开发语言·ceph·php
阿里嘎多学长22 分钟前
2025-12-25 GitHub 热点项目精选
开发语言·程序员·github·代码托管
Oxye28 分钟前
服务器内存不足导致程序没完全起起来,报错Required type must not be null
java·开发语言
乾元30 分钟前
自动化补丁评估与策略回滚:网络设备固件 / 配置的风险管理
运维·开发语言·网络·人工智能·架构·自动化
2501_9167665431 分钟前
【Java】static关键字与类的加载顺序
java·开发语言
山峰哥33 分钟前
SQL查询优化秘籍:从Explain分析到性能飞跃
开发语言·数据库·sql·oracle·性能优化·系统优化