Bagaimana cara mengambil/mencetak (stderr) ERROR"?

pemrograman


Oke, setelah RTFM saya tahu “fungsi pengikatan” menyetel “ERROR(s)” pada kegagalan …
1. Bisakah saya mendapatkan info tersebut dari kode di bawah ini?
(Saya tidak meminta “ERROR” tertentu, hanya sebuah indikator – dalam kode – bahwa fungsi tersebut menetapkan (stderr) “ERROR”.
2. Apa cara paling mudah untuk mengambil secara fisik teks kesalahan yang sebenarnya – dengan asumsi itu adalah “stderr”?
Saya hanya ingin menunjukkannya, saya tidak perlu mencatatnya atau menyimpannya ke dalam FILE (yang sepertinya merupakan cara paling umum).

C++
/**
   *  @brief Function template for std::bind.
   *  @ingroup binders
   */
  template<typename _Func, typename... _BoundArgs>
    inline _GLIBCXX20_CONSTEXPR typename
    _Bind_helper<__is_socketlike<_Func>::value, _Func, _BoundArgs...>::type
    bind(_Func&& __f, _BoundArgs&&... __args)
    {
      typedef _Bind_helper<false, _Func, _BoundArgs...> __helper_type;
      return typename __helper_type::type(std::forward<_Func>(__f),
					  std::forward<_BoundArgs>(__args)...);
    }

Apa yang saya coba:

Gagal mencoba memulai proses dan membaca stderr.

Solusi 1

Komentar Richard benar dan pertanyaan Anda sama sekali tidak jelas.

Biasanya ketika seseorang ingin menulis surat stderr Anda melakukan sesuatu seperti ini:

C++
fprintf( stderr, "Error at line %d of %s\n", __LINE__, __FILE__ );

stderrmenyukai stdoutdapat dialihkan ke file juga.

コメント

タイトルとURLをコピーしました