6

qwe.hとして2つのファイルがあります

#ifndef QWE_H
#define QWE_H
//#include <iostream>
int asd();
#endif

qwe.cc

#include "qwe.h"
int asd()
{
std::cout<<"asdasd";
}

プリプロセッサのみを実行するとg++ -E qwe.cpp > op4 、次の出力が得られます

# 1 "qwe.cpp"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "qwe.cpp"
# 1 "qwe.h" 1




int asd();
# 2 "qwe.cpp" 2
int asd()
{
 std::cout<<"asdasd";
}

プリプロセッサの出力は有効なC /C++ ファイルであってはなりませんか? ステートメント「# int string int」の意味は何ですか

4

3 に答える 3

6

これらは、ファイルが他のファイル内のどこに含まれているかを追跡するために使用される行番号であり、コンパイラの警告やエラーを生成するときに役立ちます。

ウィキペディアのこの記事を参照してください。

于 2013-07-08T12:55:59.157 に答える