从我的C字符串前面删除空格

时间:2012-01-03 10:35:18

标签: c string

我有一些代码输出如下:

void exec_prompt(char * usr_name, char * host_name)
{
    printf(" %s::%s\n", usr_name, host_name);
    return;
}

但打印出来并不像预期的那样:

 geisst::ALPHA-DT2

字符串前面有空格。

usr_name变量从main函数传递,并从getenv()函数返回。使用以下函数从main函数传递host_name变量:

char * returnHost()
{
    char hostname[1024];
    hostname[1023] = '\0';
    gethostname(hostname, 1023);

    return hostname;
}

也许getenv()函数会添加一个空格?

任何帮助或建议表示赞赏,请保持友好:P

盖斯特

1 个答案:

答案 0 :(得分:2)

原因是你的格式有一个空格:“%s ::%s \ n”

只需将其更改为:

printf("%s::%s\n", usr_name, host_name);
相关问题