GNU/Linux >> Belajar Linux >  >> Linux

Apa yang harus saya gunakan selain windows.h di Linux?

Typedef yang hilang (HANDLE dll.) bukan masalah Anda. Masalah Anda adalah Linux dan Windows memiliki API yang benar-benar berbeda, Anda tidak bisa begitu saja berharap untuk mem-porting satu ke yang lain dengan mengganti beberapa definisi jenis.

Bagian lengkap yang bergantung pada platform dari kode Anda harus diganti. Oleh karena itu, langkah pertama Anda adalah mempelajari API Linux. Cara terbaik untuk melakukannya adalah mendapatkan buku tentang pemrograman Linux.

Selain itu, Linux tidak menyediakan API default untuk pengelolaan jendela seperti halnya Windows, jadi jika Anda memprogram aplikasi grafis, Anda juga harus memilih perpustakaan windowing.


Tidak ada yang "padanan", jadi untuk berbicara, untuk windows.h di Linux, Anda perlu memperbaiki kesalahan Anda kasus per kasus, atau lebih baik, menulis ulang kode Anda untuk linux (jika tidak terlalu rumit).

Namun, jika kami mengabaikan API khusus windows, Anda mungkin dapat memperbaiki kesalahan typedef (DWORD, HANDLE, ...):

#ifndef DWORD
#define WINAPI
typedef unsigned long DWORD;
typedef short WCHAR;
typedef void * HANDLE;
#define MAX_PATH    PATH_MAX
typedef unsigned char BYTE;
typedef unsigned short WORD;
typedef unsigned int BOOL;
#endif

kode sumber typedef


Linux
  1. Mengapa eval harus dihindari di Bash, dan apa yang harus saya gunakan?

  2. VirtualBox di Linux:Gambar Windows apa yang digunakan dan di mana mendapatkannya?

  3. Karakter apa yang harus saya gunakan atau tidak gunakan pada nama pengguna di Linux?

  1. Apa itu Perintah Chown di Linux dan Cara Menggunakannya

  2. Linux – Bagaimana Cara Menggunakan Dhcpcd Di Openwrt Daripada Udhcpc?

  3. Cara Menggunakan Python untuk Query WMI (Linux – Windows)

  1. Apa VPS Terbaik:Windows atau Linux?

  2. C++:pustaka regex apa yang harus saya gunakan?

  3. Sistem file apa yang digunakan saat menggunakan Windows dan Linux?