1. ホーム
  2. c++

[解決済み] strlen() の使用時に「このスコープでは宣言されていません。

2022-01-31 19:50:30

質問

このコードをコンパイルしようとしているのですが、なぜかうまくいきません。どなたか教えてください。strlen()を正しく使う方法を知りたいのです。

 #include<iostream>
 using namespace std;

 int main()
 {
    char buffer[80];

    cout << "Enter a string:";
    cin >> buffer;
    cout << strlen(buffer);

    return 0;

 }

cin.getline(buffer, 80); を使ってみましたが、同じコンパイルエラーの問題が発生しました。

私のコンパイラは、エラーはこれだと言っています

error: strlen is not declared in this scope

解決方法は?

インクルードを忘れています。 <cstring> または <string.h> .

cstring は、あなたに strlenstd という名前空間があり、一方 string.h を指定すると、グローバルな名前空間に保持されます。