我知道這個問題已被問到,但我看到的答案並不適用於我的案例。在我的程序結束時,會打開一些文件供寫入。爲了簡單起見,我只列出了兩個。變量dirPath
是執行時傳入的命令行參數。如何連接兩個字符串(一個變量),同時仍然能夠重用其中一個參數(變量)?
這是我第一次嘗試:
FILE *fid_sensory_output;
FILE *fid_msn_output;
fid_sensory_output = fopen(strcat(dirPath,"sensory_output"), "w");
fid_msn_output = fopen(strcat(dirPath,"msn_output"), "w");
這不起作用,因爲strcat的不返回連接字符串的副本,而是追加第二對Arg的1號。在尋找工作時,我發現these recommendations,一起使用strcpy和strcat,或使用sprintf。
我第一次嘗試的sprintf但得到一個錯誤,說我是想通過在一個char *
預期的int
,即使dirPath
被聲明爲char *
。我也嘗試傳遞字符串文字,但沒有運氣。
我嘗試過以各種方式使用strcat和strcpy,但沒有任何成功。有什麼建議麼?
數這確實對我來說,太感謝你了! – aweeeezy