首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >这个函数接受一个字符串,并“过滤”出所有非数字字符和C中除第一个点以外的所有字符?

这个函数接受一个字符串,并“过滤”出所有非数字字符和C中除第一个点以外的所有字符?
EN

Stack Overflow用户
提问于 2018-12-02 04:56:28
回答 1查看 39关注 0票数 0

例如:假设字符串为“90.%7”。该函数将过滤掉%和第二个点。因此,函数将返回"90.7“。我可以灵活地决定如何返回它。

到目前为止,我所做的一切都没有奏效。悲伤的脸。

谢谢。

编辑:我知道怎么做了。

EN

回答 1

Stack Overflow用户

发布于 2018-12-02 05:12:55

查看此代码

代码语言:javascript
复制
void filter(const char * input, char * output)
{
    int length = strlen(input);
    int dot_was_seen = 0;
    int i;
    int j = 0;
    for( i = 0 ; i < length ; i++)
    {
        if(input[i] >= 0x30 && input[i] <= 0x39)
            output[j++] = input[i];
        else if(!dot_was_seen && input[i] == 0x2E)
        {
            output[j++] = input[i]; 
            dot_was_seen = 1;
        }
    }
    output[j] = 0;
}

int main()
{
    char input[] = "90.%7.";
    char output[32];

    filter(input, output);

    printf(output);

    return 0;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53574969

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档