यदि उपयोगकर्ता प्रोग्राम जैसे "./programm" चलाता है, तो मुझे "कृपया, कुछ लिखें" टेक्स्ट प्रिंट करने की आवश्यकता है। और यदि उपयोगकर्ता "./programm> file.txt" का उपयोग करता है तो फ़ाइल में टेक्स्ट प्रिंट न करें। मैं कैसे पता लगा सकता हूं कि उपयोगकर्ता फ़ाइल पर रीडायरेक्ट का उपयोग करता है? सी पर मेरा कोड:

 #include <stdio.h>
 int main() {
    char buffer[100] = "It was readed...";
    int cb;
    write(1,"Vvedite\n", 8); // записываем в 1 текст Vvedite кол-во байтов 8
    cb = read(0, buffer+18, 80);
    cb+=18;
    write(1, buffer, cb);
    return 0;
 }
0
coi175 11 सितंबर 2020, 11:56

1 उत्तर

सबसे बढ़िया उत्तर

खोजने के लिए आप isatty() कॉल का उपयोग कर सकते हैं पता करें कि क्या मानक आउटपुट (1) एक TTY (कंसोल) से जुड़ा है।

3
AKX 11 सितंबर 2020, 11:58