我想將代碼插入在Windows上運行的C++應用程序,以確定stdout(或cout)是否指向控制檯,如果是,則在將它們寫出之前將字符轉換爲終端編碼。如果沒有(例如,如果寫入文件或管道),字符應單獨保留。轉換部分不是問題,但我想知道應用程序是否有可能知道它的標準輸出是否轉到控制檯或其他地方。有沒有辦法確定stdout是否指向控制檯?
我不確定Windows API函數GetStdHandle是否有任何幫助,或者它只是指向stdout而不能確定任何信息的方法。同樣,我不確定是否有任何可以從cout獲得的信息表明它是否指向控制檯或其他內容。到目前爲止,我還沒有能夠找到任何這方面的內容。
不是我所知道的 –