“%lt”在C ++中意味着什么? (不是模数,我知道那是做什么的)

时间:2009-05-21 02:03:46

标签: c++ operators

我曾经看过这行代码:

std::cout %lt;%lt; "Hello world!" %lt;%lt; std:: endl;

我想知道%lt;%lt;的意思。

3 个答案:

答案 0 :(得分:33)

你一定是在网上看过的。有人上传了这一行:

std::cout << "Hello world!" << std::endl;

将其转换为输出为html:

std::cout &lt;&lt; "Hello world!" &lt;&lt; std::endl;

因为&lt;当然是<的html实体。

最后,某个地方决定将&符更改为百分号,可能是url编码方案的一部分。

答案 1 :(得分:30)

看起来像“%lt;”应该为http传输进行转义。像:

%lt;%lt;

应该是:

<<

答案 2 :(得分:1)

我的第一个想法是,您可能看到使用C trigraphs的代码。但是,似乎没有<>的三字符。

C三字符及其单字符等价物是:

??=  #
??/  \
??'  ^
??(  [
??)  ]
??!  |
??<  {
??>  }
??-  ~