[英]Remove the space from infront of my 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
蓋斯特
原因是你的格式有一個空格:“%s ::%s \\ n”
只需將其更改為:
printf("%s::%s\n", usr_name, host_name);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.