Re: 引数が「空」のときの条件分岐

名前: しっぽ愛好家
日時: 2002-07-25 10:58:18
IPアドレス: 61.115.38.*

>>9648 \ifx を用いてトークンを比較します. \def\testempty#1{% \def\@tempa{#1}% \ifx\@tempa\empty true\else false\fi} のようなところでしょうか. \testempty{} → true \testempty{<non-empty text>} → false あるいは次のように定義してみます. \def\testempty#1{% \ifx\@nnil#1\@nnil true\else false \fi} %%% こちらは,\testempty{\@nnil ...} の場合 (\makeatletter 適用時) にも %%% 引数が空と誤認されます.しかし,\@tempa のようなものの %%% 定義を行わないため都合がよい場合もあります. なお,\empty は \def\empty{} のように定義されている, ``空文字列に展開されるマクロ'' で,最初の例のように 空文字列であるか否かのテストのためにしばしば用いられるものです. %%% したがって,\empty を再定義するのは危険です.

この書き込みへの返事:

お名前
題名 
メッセージ(タグは <a href="...">...</a> だけ使えます)