-1
我想從以下路徑導入文件:C的用戶名在Linux - 獲取當前用戶名
進口「/項目/ TFS /用戶/ 約翰 /驗證/ ......
有沒有一種方法可以改變「約翰」爲$ USER用C,因此將採取當前用戶 並沒有採取約翰的文件始終,我試過$ USER,我得到的編譯錯誤。
是有在c中做的一種方法?
我想從以下路徑導入文件:C的用戶名在Linux - 獲取當前用戶名
進口「/項目/ TFS /用戶/ 約翰 /驗證/ ......
有沒有一種方法可以改變「約翰」爲$ USER用C,因此將採取當前用戶 並沒有採取約翰的文件始終,我試過$ USER,我得到的編譯錯誤。
是有在c中做的一種方法?
#include <stdio.h>
#include <sys/types.h>
#include <pwd.h>
#include <unistd.h>
#include <linux/limits.h>
int main(void)
{
char path[PATH_MAX] = {0};
struct passwd *p = getpwuid(getuid());
if (p != NULL)
{
snprintf(path, sizeof(path), "/projects/tfs/users/%s/verification/.", p->pw_name);
printf("%s\n", path);
}
return 0;
}
嘗試'的sprintf(STR, 「/項目/ TFS /用戶/%S /驗證」,GETENV( 「USER」))'。 –
爲了幫助人們回答您的問題,您需要更加具體地瞭解錯誤。請[編輯]您的帖子以合併您從[mcve]中獲得的確切錯誤(最好使用複製+粘貼以避免轉錄錯誤)。 –
@ usr--那個問題似乎比這個問題更受限制,例如,它指定不使用'getenv()'。 –