📄 scpp.1
字号:
.TH SCPP 1 "28 September 1983".SH NAMEscpp \- selective C preprocessor.SH SYNOPSIS.B scpp[.BI \-i incfile ] [.BI \-d macro] [.BI \-D macro] [.BI \-D macro=def] [.B \-C].ti +5[.BI \-I incdir] [.I file...].SH DESCRIPTION.B Scppconcatenates the input.I files(or reads standard-in, if no.I fileis given),interprets all references to given macros,leaving the rest of the.IR file "(s)"unaltered,then writes the result to standard-out.It is helpful in removing conditionally compiled code or misleadingmacros from a file..PPThe.I filename "\fB-\fP" refers to standard-in..PPThe following options are available.Each option can appear as frequently as desired..RS.TP.SM \-dInterpret all references to the given.I macro..I Macrocan be either a single macro name or a whitespace-separated list ofmacro names (e.g. -dMAXINT or -d"MAXINT MININT INTWID").All occurrences of the macro and all instances of the intrinsic macro\&"defined()" referring to this macro are expanded.All preprocessor directives referring to this macro (except.BR #if )perform their usual function and do not appear in the output..B #ifdirectives are interpreted only if their value is not dependent on macroswhich are not to be interpreted..TP.SM \-DDefine the.I macroto have the value.I def,or "1" if no.I defis given.Unlike the C preprocessor,.B scppdoes not implicitly define certain macros that describe the environment inwhich the code will be running (e.g. "vax" or "unix")..B \-Dimplies.B \-d..TP.SM \-CPreserve comments and whitespace in interpreted macro definitions.Normally, comments and leading and trailing whitespace are stripped frominterpreted macro definitions..TP.SM \-IAdd.I incdirto the list of directories to be searched for include files..B Scppsearches directories in the same order as the C preprocessor:if the include filename is enclosed in double-quotes ("...")rather than angle-brackets (<...>),the directory containing the current file being processed;the directories given by -I, left-to-right;the standard directory, /usr/include..TP.SM \-iProcess the.I fileinclusion and leave the included text in the outputin place of the original.BR #includestatement..RE.SH AUTHORBrad Needham, Tektronix, Inc..SH "SEE ALSO"cc(1)..SH BUGSVery long identifiers (those over 100 characters long) will crash.B scpp..PPBecause.B scppinterprets only the given macros, the meaning of some code will change.E.g. "scpp -dBOO" of.br #define BOO hello,there.br #define twopar(a,b) a b.br twopar(BOO,folks).brwill generate.br #define twopar(a,b) a b.br twopar(hello,there,folks).brcausing an argument mismatch when the output is compiled..PPBecause uninterpreted "#if"s, "ifdef"s, and "ifndef"s, have no effecton the output, the following example, when processed via "scpp -dLEFT",will generate an error message complaining aboutmultiple definitions of "LEFT"..br #ifdef ZULU.br #define LEFT 20.br #else.br #define LEFT 347.br #endif.PPThe C preprocessor macros "\fB__FILE__\fP" and "\fB__LINE__\fP" have nospecial meaning to.B scpp.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -