ここでは、Unix や Linux の C 言語で timer_create や sigaction システムコールを使用したタイマ処理を実装するサンプルコードを掲載しています。
Tag Archives: C言語
[ C言語 ] 「Ctrl + C」 でプログラムを終了させないようにする ( SIGINT )
Unix の C 言語で作成したアプリケーションは、デフォルト動作では実行中に シェルから 「Ctrl + C」が入力されるとプログラムは終了します。ここでは、そのデフォルト動作を無効にしてアプリケーションを終了させないサンプルコードを掲載しています。なお、本サンプルの動作確認は Solaris10 で行っています。
[ C言語 ] プロセスの実行と出力結果の取得 ( popen )
「C言語 プロセスの生成 ( fork ) と パイプによるプロセス間通信 ( pipe )」では、プロセスの生成に fork と execl システムコールを使用しましたが、ここでは、popen を使用してプロセスを生成し、その出力結果を取得するサンプルを掲載しています。
[ C言語 ] プロセスの生成 ( fork ) と パイプによるプロセス間通信 ( pipe )
Unix / Linux で C 言語を用いてプロセスを新規に作成する場合には、システムコール fork を使用します。また、fork システムコールによって生成したプロセスとパイプによるプロセス間通信を行うことができます、ここでは、そのサンプルコードを掲載しています。詳細はコメントを参照ください。
[ C言語 ] TCP / IP でパケットの送受信を行うサンプル
ここでは、Unix / Linux で C 言語を用いて TCP でパケットの送受信を行うサンプルコードを掲載しています。なお、詳細はコメントを参照ください。また、UDP による送受信を行うサンプルコードは「[ UNIX-C ] UDP / IP でパケットの送受信を行う」に掲載しております。
[ C言語 ] UDP / IP でパケットの送受信を行う
UDP / IP でパケットの送受信を行うサンプルコードになります。 詳細はサンプル内のコメントを参照ください。なお、本サンプルコードは Solaris10 上で動作確認を行っております。
[ VC++ ] メモリ領域の動的確保と解放( new, delete 演算子)
C言語でメモリの動的確保を行いたい場合は、malloc と free 関数を使用していました。c++ はC言語もサポートしているので同じように malloc, free 関数を使用することができますが、c++ ではクラスなどのインスタンス化を行う場合は、new 演算子を使用しますので、メモリも new 演算子で確保することが多いです。