在VS2012,打开“工具菜单”中的“选项”。在左侧菜单中“字体和颜色”部分,可以发现代码
ij = I::oO(0xB81l);
这句代码是VisualStudio里的一个示例,包含了字符对i和j、:和;、oO和0、B和8、1l和I。有些字体这几组字符(特别是0和O)很难区分。
(我选了等宽字体Consolas作为我VS里文本编辑器的字体,这个字体里0里面比O多一个斜线)
为了探究这段代码的含义,我们做个实验:
1)在VS2012中建立一个C++控制台应用程序
2)输入下面代码
// Just4Fun.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" namespace I { int oO(int num) { return num; } } int _tmain(int argc, _TCHAR* argv[]) { int ij; ij = I :: oO(0xB81l); printf("%d\n", ij); //输出ij的值 char c = ‘ ‘; //读取一个字符赋到c中 scanf_s("%c", c); return 0; }
3)程序运行结果
可以看到运行结果为2945
代码含义:ij是一个被赋值的变量。I是一个命名空间,oO为该命名空间下的一个函数,0xB81l为该函数的参数。0xB81即十六进制数B81,转化为十进制后值为11*16*16+8*16+1=2945,后面的l表示此数为long类型。
关于代码 ij = I::oO(0xB81l);,布布扣,bubuko.com
时间: 2024-10-09 23:33:03