• OpenSSLをインクルードした.cファイルをコンパイルするには?

    質問 以下のインクルードを持つ小さな.cファイルをコンパイルしようとしています。 #include <openssl/ssl.h> #include <openssl/rsa.h> #include <openssl/x509.h> #include <openssl/evp.h> 私が.cファイルを持っている同じフォルダに、私はすべて

    2023-10-17 05:37:30
  • goto の後の変数宣言 Label

    質問 今日、一つ面白いことを発見しました。私は、gotoラベルの後に変数を宣言することができないことを知りませんでした。 以下のコードをコンパイルすると #include <stdio.h> int main() { int x = 5; goto JUMP; printf("x is : %d\n",x); JUMP: int a = 0;

    2023-10-12 18:55:49
  • Unix での再帰的 mkdir() システムコール

    質問 mkdir(2) という名前の Unix システムコールの man ページを読んだ後、このコールはパスの中間ディレクトリを作成せず、パスの最後のディレクトリのみを作成するようです。手動でディレクトリ文字列を解析し、各ディレクトリを個別に作成することなく、パスのすべてのディレクトリを作成する方法 (または他の機能) はありますか? どのように解決するのですか? 残念ながら、それを

    2023-10-11 09:25:25
  • Cからのstdinとstdoutの再ルーティング

    質問 を再度開きたいのですが stdin と stdout (そしておそらく stderr を呼び出すことができるように、ファイルハンドルを作成しました。 printf() または putchar() または puts() を呼び出すとファイルに移動し、今後 getc() などの呼び出しはファイルから行われます。 1) 標準入力/出力/エラーを永久に失いたくあり

    2023-10-08 06:20:06
  • なぜgccは、引数なしと定義された関数に引数を渡すことができるのですか?

    疑問点 なぜこのコードがコンパイルされるのか理解できません。 #include <stdio.h> void foo() { printf("Hello\n"); } int main() { const char *str = "bar"; foo(str); return 0; } gccは、私がfoo()にあまりにも多くの引数を渡し

    2023-10-07 12:05:37
  • 浮動小数点数の接尾辞「f」は何に使うのですか?

    質問 C言語において、この2つの変数の違いは何なのか気になります。 float price = 3.00; と float price = 3.00f; サフィックスの用途は? f を使うのでしょうか? どのように解決するのですか? 3.00 が解釈されるのは double とは対照的に 3.00f としてコンパイラに認識されます。 float . は

    2023-10-07 03:37:05
  • temp変数でプログラムが遅くなることはありますか?

    質問 以下のようなC言語コードがあるとします。 int i = 5; int j = 10; int result = i + j; これを何度もループさせる場合は int result = 5 + 10 ? 私はよくコードを読みやすくするために一時的な変数を作成します。例えば、2つの変数がインデックスを計算するためにいくつかの長い式を使用していくつかの配列から取得された場合です。

    2023-10-06 17:10:41
  • noreturn "関数はなぜ戻るのですか?

    質問 私が読んだのは これ についての質問 noreturn 属性についてです。これは呼び出し元に戻らない関数に使用されます。 では、C言語でプログラムを作ってみました。 #include <stdio.h> #include <stdnoreturn.h> noreturn void func() { printf("noretu

    2023-10-05 09:33:26
  • WindowsでC言語のディレクトリが存在するかどうかを確認する方法は?

    質問 質問 Windows C アプリケーションで、関数に渡されたパラメータを検証して、指定されたパスが存在することを確認したいのです。 C言語でWindowsにディレクトリが存在するかどうかを確認するにはどうすればよいですか。 *存在を確認してからパスを使用するまでの間に存在しなくなるというレースコンディションに陥る可能性があることは理解していますが、私はそれに対処すること

    2023-10-04 21:02:49
  • なぜこのプログラムは "forked!" と表示するのでしょう?を4回表示するのですか?

    質問 なぜこのプログラムは "forked!" と表示するのですか?を4回表示するのでしょうか? #include <stdio.h> #include <unistd.h> int main(void) { fork() && (fork() || fork()); printf("forked!\n"); return 0; }

    2023-10-03 04:39:57
  • L1 Cache Missのコストとは?

    質問 編集 : 参考までに(もし誰かがこの問題に出くわしたら)、Igor Ostrovskyが書いた 偉大な投稿 を書きました。この記事では、いくつかの異なる問題について議論し、数値の例を示しています。 編集を終了する いくつかのテストを行いました <long story goes here> を実行し、パフォーマンスの違いはメモリ キャッシュ ミスに

    2023-09-30 12:07:30
  • fopenにおけるrとrbの違いは何ですか?

    質問 C 言語で fopen を使用してみましたが、2 番目のパラメータはオープンモードです。2つのモード "r" と "rb" は、私を大いに混乱させる傾向があります。同じようなものだと思うのですが。でも、"rb"を使った方がいい場合もあります。では、なぜ"r"が存在するのでしょうか? 詳しく、または例を挙げて説明してください。 ありがとうございました。 どのように解決するのですか?

    2023-09-30 07:34:53
  • ヘッダーファイルでの変数宣言 [重複]について

    質問 この質問はすでにここに回答があります : ソースファイル間で変数を共有するためにexternを使用するには? (17の回答) 終了 3

    2023-09-29 13:44:31
  • 行列の乗算。行列の大きさの差は小さく、タイミングの差は大きい

    質問 次のような行列の掛け算のコードがあります。 for(i = 0; i < dimension; i++) for(j = 0; j < dimension; j++) for(k = 0; k < dimension; k++) C[dimension*i+j] += A[dimension*i+k] * B[dime

    2023-09-25 10:44:22
  • 関数名の前のアスタリスクはどのような機能ですか?

    質問 ほとんどのC言語で見慣れない関数宣言があり、混乱しています。 void *func_name(void *param){ ... } は何をするのか * はこの関数を意味するのでしょうか? 私の理解では、( * について私が理解しているのは、それは別の変数へのポインタを作成し、後者の変数がメモリ内のどのアドレスに格納されているかを追跡することができる、ということです

    2023-09-24 13:29:26
  • 揮発性構造セマンティクス

    質問 構造体型変数のインスタンスを volatile と宣言するだけで十分ですか (そのフィールドがリエントラントなコードでアクセスされる場合)、それとも構造体の特定のフィールドを volatile と宣言しなければなりませんか? 別の言い方をすると、(もしあれば)意味上の違いは何ですか。 typdef struct { uint8_t bar; } foo_t; volatil

    2023-09-23 17:29:07
  • ポインタからポインタへのポインタと通常のポインタとの比較

    質問 ポインタの目的は、特定の変数のアドレスを保存することです。その場合、次のコードのメモリ構造は次のようになります。 int a = 5; int *b = &a; メモリアドレス ..................値 a ... 0x000002 ................... 5 b ...... 0x000010 .......

    2023-09-22 06:53:35
  • Cの動的割り当てメモリのサイズを決定する

    質問 C 言語で、動的に割り当てられたメモリのサイズを調べる方法はありますか? 例えば char* p = malloc (100); に関連するメモリの大きさを調べる方法はありますか? p ? どのように解決するのですか? comp.lang.cのFAQ一覧 - 質問7.27 - Q. では malloc パッケージを照会して を問い合わせるこ

    2023-09-21 14:37:51
  • C言語で文字列定数はどのように宣言するのですか?

    質問 私は、C 言語では数値定数を enum の代わりに #define の代わりに /* bad style */ #define MAXLINE 1024 /* good/better style */ enum { MAX_LINE = 1024 }; 文字列定数の定義に同等のルールはありますか? /* is this good style? */ #defin

    2023-09-21 02:24:47
  • linux __userマクロの意味するところは?

    質問 私は、誰かが Linux カーネル ソースで使用されている __user マクロのニュアンスを説明してくれることを期待していました。 まず最初に、マクロを # define __user __attribute__((noderef, address_space(1))) さて、いくつかググってみたところ、このマクロはポインタをユーザアドレス空間に属するもの

    2023-09-19 18:23:17