ヒアドキュメントを使う

スクリプト言語の多くはヒアドキュメントをサポートしていますが、Cの場合はヒアドキュメントを使うことはできません。ヒアドキュメントがあれば便利なことも多いのですが、Cでは、普通の文字列として記述する以外ありません。

PCPを使えば、そうした問題を解消し、Cでもヒアドキュメントが使えるようになります。以下に例を示します。

#include <stdio.h>

<?
function _($str)
{
  for ($i = 0, $n = strlen($str); $i < $n; ++$i)
    $result .= sprintf('\x%02x', ord($str[$i]));
  return "\"$result\"";
}
?>

int main(void)
{
  puts(<?= _(<<<EOT
これはヒアドキュメントの例です。
途中に改行があっても、そのまま記述できます。
EOT
); ?>);
  return 0;
}

この記事のトラックバックURL:

http://www.kijineko.co.jp/trackback/756
このエントリーを含むはてなブックマーク