c&c++

c言語 関数ポインタ

C言語では、関数ポインタは関数のアドレスを格納する変数です。これにより、プログラムは関数を間接的に呼び出すことができます。関数ポインターは、コールバック関数の実装、動的ディスパッチの実装、ポリモーフィズムのメカニズムの提供など、さまざまな方...
c&c++

c言語 配列と線形リスト

1.配列とは 配列は、同じデータ型の要素を番号(添字:インデックス)順に並べたものを表します。 添字は、C言語を含む多くの言語は0スタートとなります。 (例)要素数100のときの1次元配列a、a・・・a配列のサンプル(1)list_samp...
c&c++

c言語 スレッド間の排他制御

1.概要 複数のスレッドで共有リソースにアクセスするとき、同時に1つのスレッドだけが共有リソースにアクセスできるようにするために、ミューテックス (英: mutex)が使用されます。2.ミューテックスを使った排他制御 下記のサンプルでは、2...
c&c++

c言語 コールバック関数

1.概要 コールバック関数 (関数ポインターとも呼ばれます) は、別の関数(ハンドラ)に引数として渡される関数です。2.コールバック関数を使用する利点(1)柔軟性 別の関数をコールバックとして渡すことにより、実行時に関数の動作をカスタマイズ...
c&c++

c言語 デバック文の出力方法

(1)DEBUG_PRINT()の関数をマクロ定義します。#defineDEBUG_PRINT(...)printf("%s(%d)%s:",__FILE__,__LINE__,__func__),printf("Debug:%s\n",_...
Web3.0

Web3.0の概要

1.Web3.0とは インターネットの活用において、Web1.0(1990年~2000年)が主に情報の閲覧、Web2.0(2000年~)は中央のサービス提供事業者の情報管理を介在した情報の閲覧と発信、Web3.0(2010年~)では中央のサ...
Web3.0

ブロックチェーンの基本

1.ブロックチェーンとは Web3.0では中央のサービス提供事業者を介在することなく、利用者間で情報を発信と閲覧が可能となる情報分散型の仕組みが使われるが、ブロックチェーンは分散型管理技術として使われ、中央で情報を管理しなくても情報の改ざん...
マークアップ言語

YAMLの基本

1.YAMLとは YAML(YAML Ain’t Markup Language)はデータを構造化して表現するための記法を定めたデータ形式の一つで、 ソフトウェアの設定ファイルの記述やデータ交換などで使われる。 YAMLはスカラー、シーケン...
Linux

Linux sedコマンド

1.sedとは sedは”Stream EDitor”の略で、sedスクリプトコマンドファイル名で指定したファイルをコマンドに従って処理し、標準出力へ出力する。2.動作環境ここでの実行環境は次の通り。・VirtualBox Ubuntu 1...
Linux

Linux awkコマンド

1.awkとは awk(オーク)はスクリプト・インタプリタで、空白などで区切られたテキストの処理、演算機能もあるプログラミング言語であるが、Linuxのコマンドのように扱うことができる。2.動作環境ここでの実行環境は次の通り。・Virtua...