問題タブ [array-pointer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
55 参照

c - fopen後に配列ポインタの値が変更されています

画像の畳み込み演算を行っています。配列ポインターに動的に格納されたデータに問題があります。配列ポインター変数の 1 つのデータは、fopen関数の後で自動的に変更されます。

という関数から配列ポインタを取得しています。次に、この配列を畳み込み関数maxpool1に渡しています。conv2d2

前のコンテンツ

変更内容

畳み込み関数:

主な機能:

MaxPool1 関数:

0 投票する
1 に答える
71 参照

c - char* 配列の暗黙の減衰とは何ですか?

初心者として、私は K&R のポインターの章の問題を解決しており、文字ポインターのいくつかの側面と混同されており、型 char* の配列を関数パラメーターとして渡しています。

Char 配列の減衰 わかりました

元:

したがって、ここで渡される関数パラメーターは&a[0] です

したがって、これはs = &a[0]; になります。

上記の理解を使用して、char* 型の配列に対して同じことを試みました。同じ関数 tryMe(char*) で

元::

ここで、次のような警告が表示されます。

警告: 互換性のないポインター型 [-Wincompatible-pointer-types] から 'tryMe' の引数 1 を渡しています

何が起こっているのかわかりませんが、次のことを行うことで正常に動作しました。

関数定義の変更

tryMe(文字*) から tryMe(文字**)

これはうまくいきます。

機能する他のソリューションは次のとおりです。

関数定義は同じままです::

void tryMe(文字*)

ただし、関数パラメーターを渡すと、次のようになります::

上記の変更は希望どおりに機能しますが、なぜ機能しているのかわかりません

これらに関するガイダンスをいただければ幸いです。