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);
}

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

相关推荐
散峰而望3 小时前
基本魔法语言分支和循环 (二) (C语言)
c语言·开发语言·github·visual studio
前端世界4 小时前
用Python手写一个能识花的感知器模型——Iris分类实战详解
开发语言·python·分类
草莓工作室4 小时前
mbedtls哈希值计算
c语言·哈希算法·mbedtls
心.c4 小时前
深拷贝浅拷贝
开发语言·前端·javascript·ecmascript
曦樂~4 小时前
【Qt】启动新窗口--C/S传输信息
开发语言·qt
源代码•宸4 小时前
Qt6 学习——一个Qt桌面应用程序
开发语言·c++·经验分享·qt·学习·软件构建·windeployqt
寻找华年的锦瑟4 小时前
Qt-UDP
开发语言·qt·udp
橘颂TA4 小时前
【QSS】软件界面的美工操作——Qt 界面优化
开发语言·qt·c/c++·界面设计
Evand J4 小时前
【MATLAB例程】二维环境定位,GDOP和CRLB的计算,锚点数=4的情况(附代码下载链接)
开发语言·matlab·定位·toa·crlb·gdop
郝学胜-神的一滴5 小时前
使用现代C++构建高效日志系统的分步指南
服务器·开发语言·c++·程序人生·个人开发