我必須使用fputs來打印某些內容,而fputs需要使用「const char * str」來打印出來。 我有3個字符串打印(我不關心它是字符串還是字符[])作爲str。 我不知道正確的做法。我使用了3個字符串,我將它們添加到一個,但不工作。我也嘗試將字符串轉換爲字符,但沒有任何工作! 有什麼建議嗎?Const char * str問題
struct passwd* user_info = getpwuid(getuid());
struct utsname uts;
uname(&uts);
我希望我的字符常量*海峽= user_info-> pw_name + '@' + uts.nodename
我得到無效*‘到‘字符*’ – BlackM
雖然代碼是正確的,[使用strcat'的'是危險的(HTTP「從無效的轉換’: //stackoverflow.com/questions/936468/why-does-msvc-consider-stdstrcat-to-be-unsafe-c),應該避免(對於'strcpy'也一樣)。 – DarkDust
猜測這是一個C++源代碼,所以將'malloc()'的返回值轉換爲'char *'。如果您使用的是C++,那麼建議您使用'std :: string'而不是自己管理內存。 – hmjd