C++ 教程 在线

1824C++ 基本语法

标识符

定义:变量、符号常量、函数、数组、类型、文件、标签和其他各种用户定义的对象的名称。

  • 第一个字符必须是字母或下划线
  • 后续字符可以是字母、数字或下划线
  • 标识符的有效长度不超过247字符
  • 标识符不能和关键字相同
  • 标识符区分大小写
  • 最好也不要和系统预定义标识符同名
  • 标识符命名要做到“见名知义”
  • 应该避免使用可能引起混淆的字母

1823C++ 基本语法

C 语言 int main() 和 int main(void) 的区别?

int main(void) 指的是此函数的参数为空,不能传入参数,如果你传入参数,就会出错。

int main() 表示可以传入参数。

// 这样是正确的
int main()
{
  if (0) main(42);
}

// 这样会出错
int main(void)
{
  if (0) main(42);
}

在 C++ 中 int main()int main(void) 是等效的,但在 C 中让括号空着代表编译器对是否接受参数保持沉默。在 C 语言中 main() 省略返回类型也就相当说明返回类型为 int 型,不过这种用法在 C++ 中逐渐被淘汰。虽然 void main()在很多系统都适用,但他毕竟不是标准的,所以应该避免这种用法, 应该使用这种 int main(void) 的写法比较妥当。

1822C++ 基本语法

在 C++ 中 main 函数前面为什么要加上数据类型,比如: int void ?

main 函数的返回值是返回给主调进程,使主调进程得知被调用程序的运行结果。

标准规范中规定 main 函数的返回值为 int,一般约定返回 0 值时代表程序运行无错误,其它值均为错误号,但该约定并非强制。

如果程序的运行结果不需要返回给主调进程,或程序开发人员确认该状态并不重要,比如所有出错信息均在程序中有明确提示的情况下,可以不写 main 函数的返回值。在一些检查不是很严格的编译器中,比如 VC, VS 等,void 类型的 main 是允许的。不过在一些检查严格的编译器下,比如 g++, 则要求 main 函数的返回值必须为 int 型。

所以在编程时,区分程序运行结果并以 int 型返回,是一个良好的编程习惯。

1821C++ 基本语法

补充上面 $ 可以放在前面:

#include "stdio.h"

int main(){
    int $a=0x99;
    printf("%d\n",$a);
    return 0;
}

甚至是:

#include "stdio.h"

int main(){
    int $8=0x99;
    printf("%d\n", $8);
    return 0;
}

1820C++ 基本语法

C/C++可以使用带有 $ 的标识符:

#include "stdio.h"

int main(){
        int _2a$=0x99;
        printf("%d\n",_2a$);
        return 0;
}