首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >删除不带isspace()的前导/尾随空格

删除不带isspace()的前导/尾随空格
EN

Stack Overflow用户
提问于 2015-12-13 02:50:08
回答 2查看 478关注 0票数 0

我正在寻找一种删除前导空格的标准方法,我发现了一种使用指针和isspace()的非常简单的方法,但是我们的教授不允许我们使用<ctype.h>库。下面的方法会起作用吗?

代码语言:javascript
复制
char LeadingSpace(char *line) {
    while (line[0] == ' ') {
        line++;
    }
    return line;
}

我是个C新手,所以不能完全确定指针是如何工作的,但是如果我每次找到一个前导空格就移动指针,那么我只需要检查line[0],对吧?

EN

回答 2

Stack Overflow用户

发布于 2015-12-13 03:03:34

是-检查line[0] == ' '就可以了:

但这一行

代码语言:javascript
复制
char LeadingSpace(char *line) {

应该是

代码语言:javascript
复制
char* LeadingSpace(char *line) {

当您返回一个字符指针时

票数 1
EN

Stack Overflow用户

发布于 2015-12-13 03:10:51

尝尝这个

代码语言:javascript
复制
char* LeadingSpace(char *line) {
    while (line[0] == ' ' || line[0] == '\t' || line[0] == '\n' || line[0] == '\r') {
        line++;
    }
    return line;
}

或者使用string.h .h标头

代码语言:javascript
复制
char* LeadingSpace(char *line) {
    while (strchr(" \t\r\n", line[0])) {
        line++;
    }
    return line;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34243612

复制
相关文章

相似问题

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