#include <dos.h>
ヘッダーを含むCプログラムがあります。コンパイル時エラーが表示されます。dos.h
Linuxではヘッダーファイルが無効であることを知っています。
dos.h
Linuxに同等のヘッダーは他にありますか?
#include <dos.h>
ヘッダーを含むCプログラムがあります。コンパイル時エラーが表示されます。dos.h
Linuxではヘッダーファイルが無効であることを知っています。
dos.h
Linuxに同等のヘッダーは他にありますか?
LinuxはPosix/Unixライクなシステムなので、使用できるシステムコールと機能を学ぶ必要があります。高度なUNIXプログラミングの本(または同等のもの。AUPは非常に優れた本と見なされています)を読んでください。高度なLinuxプログラミングを読むこともできます(オンラインでも、コピーはここにあります)。dos.h
したがって、Linuxにはヘッダーがありません。
また、syscallsの紹介と、 syscalls(2)のマニュアルページにあるそれらのリストman 2 intro
を取得するために入力することもできます。アプリケーションの観点からは、syscallはLinuxカーネルによって提供される基本的な操作です。
GNU libcは、システムコールの上に非常に多くの機能(たとえば、やなどの標準C関数、ユーザーデータベースへのクエリなどのシステム関数など)を提供します。ほとんどすべてのLinuxプログラムがそれを使用しています。malloc
fprintf
fgetpwent
他の同様のシステム(MacOSXやFreeBSDなど)で(再コンパイル後に)移植可能に実行可能である必要があるもののコーディングに関心がある場合は、Posix標準に従うことを検討してください。
ターミナル画面アプリケーションをコーディングする場合は、ncursesの使用を検討してください。
グラフィカルインターフェイスが気になる場合は、QtやGtkなどのグラフィカルツールキットを使用してください。これらは通常、 X11サーバーと対話します(QtとGtkの両方は、共通のグラフィカル抽象化レイヤーを提供することにより、Windowsなどの他のPosix以外のシステムで実行できます)。GtkとQtはどちらも、システムの機能と機能(特に、pthreadの標準スレッドライブラリ)の上に抽象化レイヤー(それぞれGlibとQCore)を追加しています。
ついに、Linuxは自由ソフトウェアです; そのため、使用している(ライブラリまたはユーティリティの)ソースコードの内部を調べると面白いかもしれません。あなたもそれを改善し、それに貢献することができます。
これらすべての面で、LinuxプログラミングはWindowsやDOSとは大きく異なります。
すべてのWindowsまたはDos関数をLinuxに模倣しようとしないでください(たとえば、すべてのdos.h
関数に相当するものを要求しないでください)。Posix/Unixの考え方とコーディングを学びます。
time(7)のマニュアルページには、Linuxでの時間(さまざまな意味と機能)について多くのことが書かれています。
gcc -Wall -Wextra
;でコンパイラに警告を出すことを忘れないでください。原則として、警告が表示されなくなるまでソースコードを改善してください。
dos.h
Linux(つまり、UnixまたはPosix仕様)とWindowsは、機能と概念が異なるシステムであるため、Linuxに相当するものはありません。ただし、いくつかの無料ライブラリ(GlibとQCoreについて説明しました)は、LinuxとWindowsに適合する共通の抽象化を提供しているため、WindowsとLinuxに移植可能なソフトウェアを開発する場合は、代わりにこれらのライブラリを使用することをお勧めします(WindowsとLinux)。
dos.h
(マイクロソフトは、独占的な評判と標準およびフリーソフトウェアへの嫌悪感を考えると、独自のプロプライエタリの無料クローンを回避するために、特許または著作権に基づく法的脅威を使用するだろうと思います。マイクロソフトに対して強い意見があることを認めます。)
dos.hヘッダーファイルは、DOSオペレーティングシステムへのインターフェイスです。それらはDOS以外のオペレーティングシステムに移植できません(Linuxでは動作しないことを意味します)。dos.hのどの機能を使用しますか?