令人难忘的32位值作为常量

时间:2009-11-27 20:25:48

标签: c++ c constants

我正在寻找一个令人难忘的32位值作为常量。如果可能的话,它也应该有点滑稽。

到目前为止,我已经提出了这两个:

0xcafebabe

0xdeaddad

你能否请其他人推荐一下?

谢谢。

12 个答案:

答案 0 :(得分:18)

这里有一个完整的魔术常量列表:

Hexspeak

Magic Number

并查看其中的链接。

答案 1 :(得分:14)

我想知道,作为程序员,你需要问。毕竟,需要一个word-list和一行C ++才能找到合适的单词。

#include <iterator>
#include <string>
#include <algorithm>
#include <iostream>
#include <boost/lambda/lambda.hpp>
#include <boost/lambda/bind.hpp>

int main()
{
    using namespace boost::lambda;
    std::remove_copy_if(
        std::istream_iterator<std::string>(std::cin),
        std::istream_iterator<std::string>(),
        std::ostream_iterator<std::string>(std::cout, " "),
        bind(&std::string::size, _1) != 8u
            ||
        bind(
            static_cast<std::string::size_type (std::string::*)(const char*, std::string::size_type) const>(
                &std::string::find_first_not_of
            ),
            _1,
            "abcdefgiost",
            0u
        ) != std::string::npos
    );
}

答案 2 :(得分:3)

以下是一堆hex words,可用于制作常量。

一些单词的片段:

ba5eba11
bedabb1e
be5077ed
b0a710ad
b01dface
cab005e
ca11ab1e
ca55e77e
deadbea7
defec8
f01dab1e
f005ba11
0ddba11
5ca1ab1e
7e1eca57

答案 3 :(得分:3)

你可以很容易地找到它们。

sed '/[^a-folt]/d' /usr/share/dict/words | tr olt 017 |
awk '{print length, $0}' | sort -n | cut -f2- -d' '

答案 4 :(得分:2)

经典是0xdeadbeef。

答案 5 :(得分:1)

0xDEADBEEF 0xDEADBABE

...

Hexspeak

答案 6 :(得分:1)

这是另一个:0xDEADCAFE:)

答案 7 :(得分:1)

0xBADDD00D0xBADDFACE0xCAFEF00D0xBAADCAAB0xBADCAB1E等等

答案 8 :(得分:1)

0x00abacab

(彼得加布里埃尔离开后发生的事情。)

答案 9 :(得分:1)

我喜欢600df00d

答案 10 :(得分:1)

0x0BE5EBEE 0xADEAD60D

答案 11 :(得分:1)

我是0xBAADF00D的粉丝。