首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

C语言笔记---(2)基本语法

最新C标准,main函数类型为int而不是void。 C程序就是执行主函数代码,也可以说这个主函数就是C语言中唯一入口。 main前面的int就是主函数类型。...printf()是格式输出函数,它作用就是屏幕上输出指定消息。 return是函数返回值,不同函数返回不同值。 关键字 什么是关键字? 关键字,也叫作保留字。...unsigned 声明无符号类型变量或函数 union 声明共用体类型 void 声明函数返回值或无参数,声明无类型指针 volatile 说明变量程序执行可被隐含地改变 while 循环语句循环条件...()可以输出文本中指定占位。...• %Le:科学计数法表示 long double 类型浮点数。 • %Lf:long double 类型浮点数。 • %n:已输出字符串数量。该占位本身不输出,只将值存储指定变量之中。

91120

C语言笔记---(2)基本语法

最新C标准,main函数类型为int而不是void。 C程序就是执行主函数代码,也可以说这个主函数就是C语言中唯一入口。 main前面的int就是主函数类型。...printf()是格式输出函数,它作用就是屏幕上输出指定消息。 return是函数返回值,不同函数返回不同值。 关键字 什么是关键字? 关键字,也叫作保留字。...unsigned 声明无符号类型变量或函数 union 声明共用体类型 void 声明函数返回值或无参数,声明无类型指针 volatile 说明变量程序执行可被隐含地改变 while 循环语句循环条件...printf()可以输出文本中指定占位。...• %Le:科学计数法表示 long double 类型浮点数。 • %Lf:long double 类型浮点数。 • %n:已输出字符串数量。该占位本身不输出,只将值存储指定变量之中。

4910
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【笔记】《深入理解C++11》(上)

    C++11标准中提出SFINEA动机是当年C++98并没有对这个规则进行标准描述, 因此各个编译器对于函数模板匹配规则都是混乱, 因此新标准提出SFINEA来使程序员能按照自己想象来理解编译器并令其能精确匹配我们所需要函数...} 这个特性C++20被concept以更好语法取代 4 新手易学, 老兵易用 auto auto是静态类型推导, 必须被初始化 auto本质上是一个类型占位, 在编译时候推导出类型然后以类似字面替换方式进行使用...auto和cv限制(cv-qualifier, 指const和volatile)一起使用时, auto无法带走变量cv限制, 因此需要我们额外写清楚对应限制 auto可以用来一个表达式声明多个变量...如果目标是被重载函数则编译错误 否则, 对于带括号表达式, 如果目标是将亡值, 那么返回右值引用 对于带括号表达式, 如果目标是左值, 返回左值引用 否则返回目标本身类型 推导四规则中最麻烦规则...{ Name0, Name1 };直接获得了强作用域, 转换限制, 可指定底层类型三大优点 其中通过上面代码类型名冒号后面写所需type, 我们可以指定枚举属于type类型元素集合, 同时原生

    1.9K20

    C运用练习讲解

    第二次刷题 2024.01.21 1、关键字理解:C语言中有一些关键字,它们具有特殊含义,不能用作标识(变量名、函数名等)。 以下是C语言中一些关键字 1.auto: 声明自动变量。...9.double: 声明双精度浮点型变量或函数返回类型。 10.else: 条件语句中指定一个块,该块条件为false时执行。 11.enum: 声明枚举类型。...15.goto: 将控制转移到程序标签。 16.if: 条件语句开始。 17.int: 声明整型变量或函数返回类型。 18.long: 声明长整型变量或函数返回类型。...20.return: 从函数返回值。 21.short: 声明短整型变量或函数返回类型。 22.signed: 声明有符号类型。...8、#pragma once 其作用是防止头文件重复引用; 9、strlen 功能是用来求字符串字符个数找,单个字符不包含\0,个数不包含\0; 10、scanf() 处理数值占位时,会⾃动过滤空白字符

    10610

    C语言学习系列-->第三弹【浅谈输入和输出函数

    C 语言中: C 标准标准输入流输出流分别是 stdin 和 stdout,另外还有标准错误流 stderr。...• %[] :⽅括号中指定⼀组匹配字符(⽐如 %[0-9] ),遇到不在集合之中字符,匹配将会停⽌。 特别说⼀下占位 %s ,它其实不能简单地等同于字符串。...只要把 * 加在任何占位百分号后⾯,该占位就不会返回值,解析后将被丢弃。...%*c 就是占位百分号后⾯,加⼊了赋值忽略 * ,表⽰这个占位没有对应变量,解读后不必返回。...总结 本节主要是对输入和输出函数进行简单讲解,要想有更深入了解,可以去搜索。当然,目前学习,掌握这些其实足够了。

    10210

    C++ auto 关键字使用

    定义模板函数时,用于声明依赖模板参数变量类型。...x*y;}当模板函数返回值依赖于模板参数时,我们依旧无法在编译代码前确定模板参数类型,故也无从知道返回类型,这时我们可以使用auto。...decltype操作用于查询表达式数据类型,也是C++11标准引入运算,其目的也是解决泛型编程中有些类型由模板参数决定,而难以表示它问题。...auto在这里作用也称为返回占位,它只是为函数返回值占了一个位置,真正返回值是后面的decltype(_Tx*_Ty)。为何要将返回值后置呢?...auto仅仅是一个占位,它并不是一个真正类型,不能使用一些以类型为操作数操作,如sizeof或者typeid。

    4.5K41

    命名规则

    本节 规则 描述 CA1700:不要命名“Reserved”枚举值 此规则假定当前不使用名称包含“reserved”枚举成员,而是将其作为一个占位,以将来版本重命名或移除它。...CA1707:标识不应包含下划线 按照约定,标识名称不包含下划线 (_) 字符。 该规则将检查命名空间、类型、成员和参数。...用 FlagsAttribute 标记类型具有复数形式名称,因为该特性指明可以指定多个值。 CA1715:标识符应具有正确前缀 外部可见接口名称不以大写“I”开头。...CA1720:标识不应包含类型名称 外部可见成员某个参数名称包含一个数据类型名称,或者外部可见成员名称包含一个语言特定数据类型名称。...CA1727:对命名占位使用 PascalCase 对于日志记录消息模板命名占位,请使用 PascalCase。

    1.5K00

    C++11特性:auto关键字

    定义模板函数时,用于声明依赖模板参数变量类型。...{ return x*y; } 当模板函数返回值依赖于模板参数时,我们依旧无法在编译代码前确定模板参数类型,故也无从知道返回类型,这时我们可以使用auto。...decltype操作用于查询表达式数据类型,也是C++11标准引入运算,其目的也是解决泛型编程中有些类型由模板参数决定,而难以表示它问题。...auto在这里作用也称为返回占位,它只是为函数返回值占了一个位置,真正返回值是后面的decltype(_Tx*_Ty)。为何要将返回值后置呢?...auto仅仅是一个占位,它并不是一个真正类型,不能使用一些以类型为操作数操作,如sizeof或者typeid。

    38320

    代码质量规则

    规则索引 下表列出了代码质量分析规则规则 ID 和警告 描述 CA1000:不要在泛型类型声明静态成员 调用泛型类型静态成员时,必须指定类型类型参数。...CA1012:抽象类型不应具有构造函数 抽象类型构造函数只能由派生类型调用。 由于公共构造函数用于创建类型实例,但无法为抽象类型创建实例,因此具有公共构造函数抽象类设计上是错误。...CA1032:实现标准异常构造函数 如果不能提供完整构造函数集,要正确处理异常将变得比较困难。...CA1700:不要命名“Reserved”枚举值 此规则假定当前不使用名称包含“reserved”枚举成员,而是将其作为一个占位,以将来版本重命名或移除它。...当具有多个修复可用至少有一个修复是一项重大更改,有一个不是时,将同时指定“重大”和“非重大”。 原因 导致规则生成警告特定托管代码。 说明 讨论警告背后问题。

    2.1K30

    C语言:基础知识

    • main函数是程序入口 • main函数仅有⼀个 • 即使⼀个项⽬中有多个.c⽂件,但是只能有⼀个main函数(因为程序入口只能有⼀个) • main函数可以出现在任意位置,若在主函数调用哪些函数...,则必须在main函数之前对所调用函数进行声明,或者包含其被调用函数头文件 • 一般约定返回0,c语言中正常在返回0,异常会返回非0 int main() { printf("hello C\n"...为了让光标移到下⼀行开头,可以输出文本结尾,添加⼀个换行 \n 。 12.2 占位列举 • %a :⼗六进制浮点数,字⺟输出为⼩写。 • %A :⼗六进制浮点数,字⺟输出为⼤写。...• %zd : size_t 类型。 • %% :输出⼀个百分号。 12.3 占位使用 printf() 可以输出⽂本中指定占位。 所谓 “占位”,就是这个位置可以⽤其他值代⼊。...如果在成功读取任何数据之前,发⽣了读取错误或 者遇到读取到⽂件结尾,则返回常量 EOF。 13.3 占位使用 scanf() 常⽤占位如下,与 printf() 占位基本⼀致。

    17110

    一文掌握C++基本语法

    使用cout标准输出(控制台)和cin标准输入(键盘)时,必须包含头文件以及std标准命名空间。 2. 使用C++输入输出更方便,不需增加数据格式控制 4....1.内联函数debug版本下支持调试,而宏不支持 2.内联函数就是普通函数写法,解决了宏晦涩难懂问题 8. auto关键字(C++11) 8.1 auto简介 早期C/C++auto含义是...:使用auto修饰变量,是具有自动存储器局部变量 C++11标准委员会赋予了auto全新含义即:auto不再是一个存储类型指示,而是作为一个新类型指示来指示编译器,auto声明变量必须由编译器在编译时期推导而得...因此auto并非是一种“类型声明,而是一个类型声明时占位”,编译器在编译期会将auto替换为变量实际类型。...为了避免与C++98auto发生混淆,C++11只保留了auto作为类型指示用法 4. auto实际中最常见优势用法就是C++11提供新式for循环,还有lambda表达式等进行配合使用。

    1.3K10

    C语言输入与输出

    使用这个函数之前,必须在源码文件头部引入这个头文件 占位 printf() 可以输出文本中指定占位。 所谓 “占位”,就是这个位置可以用其他值代入。...如果参数个数少于对应占位, printf() 可能会输出内存任意值。 占位列举 printf() 占位有许多种类,与 C 语言数据类型相对应。...如果没有读取任何项,或者匹配失败,则返回 0 。如果在成功读取任何数据之前,发生了读取错误或者遇到读取到文件结尾,则返回常量 EOF。...它规则是,从当前第一个非空白 字符开始读起,直到遇到空白字符(即空格、换行、制表等)为止。 因为 %s 不会包含空白字符,所以无法用来读取多个单词,除非多个 %s 一起使用。...%*c 就是占位百分号后面,加入了赋值忽略 * ,表示这个占位没有对应变量,解读后不必返回

    4900

    Golang语言(打卡第四天)fmt格式化工具|Go主题月

    Println输出 Print系列函数会将内容输出到系统标准输出,区别在于Print函数直接输出内容,Printf函数支持格式化输出字符串,Println函数会在输出内容结尾添加一个换行。...、fmt.Scanln三个函数,可以程序运行过程标准输入获取用户输入。...fmt.Scan Scan从标准输入扫描文本,读取由空白分隔值保存到传递给本函数参数,换行视为空白。 本函数返回成功扫描数据个数和遇到任何错误。...fmt.Scanf Scanf从标准输入扫描文本,根据format参数指定格式去读取由空白分隔值保存到传递给本函数参数。 本函数返回成功扫描数据个数和遇到任何错误。...Scanln、Fscanln 和 Sscanln 换行处停止扫描,需要条目紧随换行之后; Scanf、Fscanf 和 Sscanf 需要输入换行来匹配格式换行;其它函数则将换行视为空格

    83120

    轻松拿捏C语言——关于 printf 和 scanf 那些事儿

    使用这个函数之前,必须在源码文件头部引入这 个头文件。 1.2占位 printf() 可以输出文本中指定占位。 “占位”就是这个位置可以用其他值代入。...%f :小数(包含 float 类型和 double 类型)。...⼀般指就是键盘,标准输出⼀般指就是屏幕 2.1基本用法 scanf() 函数用于读取用户键盘输⼊。...• %[] :方括号中指定⼀组匹配字符(如 %[0-9] ),遇到不在集合之中字符,匹配将会停止。 上面所有占位之中,除了 %c 以外,都会⾃动忽略起⾸空⽩字符。...它规则是,从当前第⼀个非空白字符开始读起,直到遇到空⽩字符(即空格、换行、制表等)为止。 因为 %s 不会包含空⽩字符,所以⽆法⽤来读取多个单词,除⾮多个 %s ⼀起使⽤。

    16610

    C++基础知识概述

    6.缺省参数 缺省参数概念: 缺省参数是 声明或定义函数时 为函数 参数指定一个缺省值 。调用该函数时,如果没有指定实 参则采用该形参缺省值,否则使用指定实参。...auto简介: 早期 C/C++ auto 含义是:使用 auto 修饰变量,是具有自动存储器局部变量 ,但遗憾 是一直没有人去使用它,大家可思考下为什么?...C++11 标准委员会赋予了 auto 全新含义即: auto 不再是一个存储类型指示,而是作为一 个新类型指示来指示编译器, auto 声明变量必须由编译器在编译时期推导而得 。...因此 auto 并非是一种 “ 类型声明,而是一个类型声明时占位 ” ,编译器在编 译期会将 auto 替换为变量实际类型auto使用规则: 1....为了避免与 C++98 auto 发生混淆, C++11 只保留了 auto 作为类型指示用法 4. auto 实际中最常见优势用法就是跟以后会讲到 C++11 提供新式 for

    97920

    第一个C语言程序(从Hello World开始)

    这个习惯出自哪里呢,首先回顾C语言历史,就可以了解到这个习惯出处。 1972年,C语言 由Dennis Ritchie及其同事贝尔实验室创立。...主函数 首先,主函数 main ,一个标准函数如下: int main() // 这是主函数 { return 0; // 主函数返回值 } mainC语言里面表示一个主函数。...C语言标准规定主函数返回必须是 int 。如果程序正常结束,一般将返回值设置为0。 5. 要调用函数,必须先知道函数 编译器会从代码开始,按照从上往下顺序阅读代码。...C语言中,标识可以按照你喜好自己随意命名,但是必须遵循以下规则: 标识可以用小写字母、大写字母、数字和下划线来命名。但是,标识第一个字符必须是字母或下划线,而不是数字。...关键词 是语言标准规定,并且代码中有特殊意义和用途。因此,关键词不能作为一个标识来使用。 C语言中关键词如下表所示。

    54920

    第 9 章 顺序容器

    除 array之外,其他容器默认构造函数都会创建一个指定类型空容器,而 array默认构造容器是非空:它包含了与其大小一样多元素,这些元素都被默认初始化。...如果下标越界,函数行为未定义! c.at(n),返回元素引用,编译器进行安全检查,如果越界,抛出 out_of_range异常。 容器访问元素成员函数返回都是引用。...auto v1 = c.back(); // v1是一个值拷贝 auto &v2 = c.back(); // v2是一个引用 erase操作,删除迭代器所指定元素,返回一个指向被删除元素之后元素迭代器...如果不是以空字符结尾,则必须再传递一个计数值。如果未传递计数值数组不是以空字符结尾,或者传递计数值大于数组大小,则函数行为未定义。...对于 string搜索函数,查找参数指定字符串,若找到,则返回相应位置下标,否则返回 npos。

    84850

    C语言(2)----数据类型、变量以及操作

    可见,数据类型包含内置类型和自定义类型,而前者是官方提供几种可使用类型,而后者则是可以用来给编写者创造出自己所要数据类型基本模板。 首先介绍内置类型。...不同系统返回类型有可能是 unsigned int ,也有可能是 unsigned long ,甚⾄是 unsigned long long , 对应 printf() 占位分别是 %u...它们二者都定义头文件占位 占位,顾名思义,就是这个符号可以被其他值代替。占位第一个符号永远是%,而第二个符号就是所对应类型,例如%d,%s等等。...占位对应类型 printf printf() 可以定制占位输出格式。 printf() 允许限定占位最⼩宽度。 printf总是显示正负号。 printf可以指定输出部分字符串。...这句话意思就是,测试你输入了几个数时候,你输入几个数,它读取到就是几个数,但是如果发生了错误或者已经读取到结尾了,比如它要你输入三个数但你一个都不输入,那么它就会报错返回EOF,注意EOF返回

    10410

    重学js之JavaScript基本概念(上)- 数据类型

    语法 1、js 变量、函数名和操作都区分大小写, 2、另外一些像typeof这些关键字也不能使用 2. 标识 所谓标识就是指变量、函数、属性名字,或者函数参数。...标识写法标准如下: 1、第一个字符必须是一个字母、下划线或者一个美元符号 2、其他字符可以是字母、下划线、美元符号或数字 3、标识字母采用驼峰大小写格式,例如:firstSecond、myCar...语句 js语句是以分毫结尾但是不是必须,但是推荐还是写上分号。因为这样压缩代码时候就不会出现不必要问题。 5....每个变量仅仅是用来保存值占位而已,定义变量需要用到var,之后ES6增加了let和const关键字来定义变量。...var o = new Object() ES Object类型是所有它实例基础,Object类型具有的任何属性和方法也同样存在于更具体对象

    60910

    设计规则

    设计规则支持遵从 .NET Framework 设计准则。 本节内容 规则 描述 CA1000:不要在泛型类型声明静态成员 调用泛型类型静态成员时,必须指定类型类型参数。...CA1012:抽象类型不应具有构造函数 抽象类型构造函数只能由派生类型调用。 由于公共构造函数用于创建类型实例,但无法为抽象类型创建实例,因此具有公共构造函数抽象类设计上是错误。...CA1032:实现标准异常构造函数 如果不能提供完整构造函数集,要正确处理异常将变得比较困难。...CA1034:嵌套类型不应是可见 嵌套类型另一个类型范围声明类型。 嵌套类型用于封装包含类型私有实现详细信息。 如果用于此用途,则嵌套类型不应是外部可见。...应使用 sealed 修饰标记不希望被继承类型,以免将其用作基类型。 CA1053:静态容器类型不应具有构造函数 公共或嵌套公共类型只声明了静态成员,但具有公共或受保护默认构造函数

    2K20
    领券