[解決済み] 'memcpy' はこのスコープで宣言されていません。
2022-04-17 18:05:18
質問
gccとeclipseを使って、オープンソースのc++ライブラリをビルドしようとしています。 しかし、次のようなエラーが発生します。 memcpy' はこのスコープで宣言されていません。
memory.h(とstring.h)をインクルードしようとして、eclipseは "宣言を開く"をクリックすると関数を見つけましたが、gccは私にエラーを与えました。
どうすればいいのでしょうか?
#include <algorithm>
#include <memory.h>
namespace rosic
{
//etc etc
template <class T>
void circularShift(T *buffer, int length, int numPositions)
{
int na = abs(numPositions);
while( na > length )
na -=length;
T *tmp = new T[na];
if( numPositions < 0 )
{
memcpy( tmp, buffer, na*sizeof(T));
memmove( buffer, &buffer[na], (length-na)*sizeof(T));
memcpy( &buffer[length-na], tmp, na*sizeof(T));
}
else if( numPositions > 0 )
{
memcpy( tmp, &buffer[length-na], na*sizeof(T));
memmove(&buffer[na], buffer, (length-na)*sizeof(T));
memcpy( buffer, tmp, na*sizeof(T));
}
delete[] tmp;
}
//etc etc
}
memcpyとmemmoveの各関数でエラーが発生します。
どうすればいいですか?
のどちらかを入れる必要があります。
using namespace std;
を他のネームスペースに移すか、memcpyやmemmoveのたびにこれを行います。
[...]
std::memcpy( tmp, buffer, na*sizeof(T));
[...]
名前空間を使えば、コンパイラはその関数の定義がどこにあるのかを知っています。
さらに、memcpy関数のヘッダを含めることを忘れないでください。
#include <cstring>
関連
-
[解決済み】C++でユーザー入力を待つ【重複あり
-
[解決済み】C++の変数はイニシャライザーを持っているが、不完全な型?
-
[解決済み】c++でstd::vectorを返すための効率的な方法
-
[解決済み] 式はクラス型を持つ必要があります。
-
[解決済み】クラステンプレートの使用にはテンプレート引数リストが必要です
-
[解決済み] 非静的データメンバの無効な使用
-
[解決済み] 数値定数の前にunqualified-idを付けて、数値を定義することを期待する。
-
[解決済み] error: 'NULL' はこのスコープで宣言されていません。
-
[解決済み] switch文の中で変数を宣言してはいけないのはなぜですか?
-
[解決済み】ローカル変数のメモリはスコープ外からアクセスできる?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】C++エラー。アーキテクチャ x86_64 に対して未定義のシンボル
-
[解決済み】Visual Studio 2015で「非標準の構文; '&'を使用してメンバーへのポインターを作成します」エラー
-
[解決済み】Visual Studio 2015で「非標準の構文。'&'を使用してメンバーへのポインターを作成します」エラー
-
[解決済み】識別子 "string "は未定義?
-
[解決済み】IntelliSense:オブジェクトに、メンバー関数と互換性のない型修飾子がある
-
[解決済み】リンカーエラーです。"リンカ入力ファイルはリンクが行われていないため未使用"、そのファイル内の関数への未定義参照
-
[解決済み】CMakeエラー at CMakeLists.txt:30 (project)。CMAKE_C_COMPILER が見つかりませんでした。
-
[解決済み】変数やフィールドがvoid宣言されている
-
[解決済み] memcpyとreallocにはどのようなヘッダを含めるべきですか?
-
[解決済み] g++とgccの違いは何ですか?