C语言去掉字符串前后空格,中间多余空格

本文介绍了如何使用C语言编程去除字符串开头、结尾以及中间的多余空格,探讨了相关字符串处理技巧。
部署运行你感兴趣的模型镜像
#include <stdio.h>
#include <stdlib.h>

char* del_space(char *str)
{
    int i = -1, j = strlen(str), cur = 0;
    char *fp = NULL;
    char *fp_temp = NULL;
    if (str == NULL)
    {
        return "error";
    }
    //去掉前后空格
    while (str[++i] == ' ')//前++在此处比较好控制好i的值
    {

    }
    while (str[--j] == ' ')
    {

    }
    for (; i <= j; ++i, ++cur)
    {
        str[cur] = str[i];
    }
    str[cur] = '\0';
    fp = fp_temp = str;//fp记录字符串,否则丢失;
    while (*str)
    {
        if (*str != ' ')
        {
            *fp_temp = *str;
            fp_temp++;
        }
        else
        {
            if (*(fp_temp - 1) != ' ')//只取一个空格
            {
                *fp_temp = *str;
                fp_temp++;
            }               
        }
        str++;
    }
    *fp_temp = '\0';
    return fp;
}
void main()
{
    char str[] = "    qgsdfg  dfg  dfgd       fgdfg ";

    char *p = del_space(str);
    printf("%s", p);

    system("pause");
}

这里写图片描述

您可能感兴趣的与本文相关的镜像

Qwen-Image

Qwen-Image

图片生成
Qwen

Qwen-Image是阿里云通义千问团队于2025年8月发布的亿参数图像生成基础模型,其最大亮点是强大的复杂文本渲染和精确图像编辑能力,能够生成包含多行、段落级中英文文本的高保真图像

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值