-1

必要なライブラリをインクルードすると、「#include..」行に警告が表示されません。しかし、そのライブラリの関数を使用すると、Vim が「宣言されていない関数の使用...」を示していることがわかります。ライブラリが正しく含まれていないようです。だから私はこの問題を理解する方法を知りたいですか?

この質問のスクリーンショットは次のように添付されています。

構文エラー警告

.ycm_extra_conf.py ファイルの設定

4

1 に答える 1

1

次のように含めてみてください。

#include <stdlib.h>  //use <> instead of  "" 

また、「printf」関数は「cstdio」ライブラリから来ているので、そのライブラリも実装してみてください。

#include <stdio.h>

更新しました

その問題を解決する最も簡単な方法は次のとおりです。

stdio.h ライブラリを含める

#include <stdio.h>

次に、入力する代わりに;

printf('s');

あなたがやる、

printf("s");

ここで、文字「s」を本当に印刷したい場合は、次を使用します。

printf("%c", 's');   // Tells the printf function that 's' is a character

最終的なコードは次のようになります。

#include <stdio.h>      
int main(int argc, char** argv) {
    printf("s"); 
    printf("%c", 's');
    return 0;
}

さて、あなたのコメントは「cout」が機能しないというものでした。「cout」を機能させるには、iostream ライブラリを含める必要があります。

#include <iostream>

次に、コードで「cout」を使用できます。

std::cout << 's';
std::cout << "s";

または、「名前空間 std」と「iostream」ライブラリを含めて、「cout」の前に std:: を使用しないようにすることもできます。

include <iostream>
using namespace std;

その後、std:: なしで cout を使用します。

cout << 's';
cout << "s";

最終的なコードは次のようになります。

#include <iostream>
using namespace std;

int main(int argc, char** argv) {    
    cout << 's';
    cout << "s";
    return 0;
}

iostream ライブラリの内容とその使用方法について詳しく知りたい場合は、次のサイトを使用することをお勧めします。

http://www.cplusplus.com/reference/iostream/

また、stdio.h については、

http://www.cplusplus.com/reference/cstdio/

于 2016-09-18T09:30:11.223 に答える