表达式字母大小写转换

字母大小写转换  时间:2021-05-05  阅读:()
附录AC语言运算符表运算符按照优先级大小由上向下排列,在同一行的运算符具有相同优先级.
第二行是所有的一元运算符.
运算符解释结合方式括号(函数等),数组,两种结构成员访问由左向右*&(类型)sizeof否定,按位否定,增量,减量,正负号,间接,取地址,类型转换,求大小由右向左*/%乘,除,取模由左向右+-加,减由左向右>左移,右移由左向右小于,小于等于,大于等于,大于由左向右==!
=等于,不等于由左向右&按位与由左向右^按位异或由左向右|按位或由左向右&&逻辑与由左向右||逻辑或由左向右=条件由右向左各种赋值由右向左,逗号(顺序)由左向右关于条件运算符的结合方式,参看第3.
4.
2节的解释.
1附录BC语言速查本附录按照分类描述C语言各方面的特征,对于在本书正文里有详细介绍的东西,这里只给出简单介绍和索引.
在下面介绍中,诸如(2.
3.
4)之类的写法表示讨论有关问题的章节编号.
1,关键字C语言总共有32个关键字:autobreak(4.
3.
2)case(4.
5)char(2.
3.
3,5.
1)const(5.
3.
5)continue(4.
3.
2)default(4.
5)do(4.
3.
1)double(2.
3.
2)else(3.
6.
1)enum(8.
4)extern(5.
3.
1)float(2.
3.
2,5.
1)for(3.
6.
3)goto(4.
3.
2)if(3.
6.
1)int(2.
3.
1,5.
1)long(2.
3.
1,5.
1)register(5.
3.
5)return(3.
3.
1,3.
2.
3,5.
2.
4)short(5.
1)signed(5.
1)sizeof(6.
2)static(5.
3.
4,5.
3.
5)struct(8.
1.
1)switch(4.
5)typedef(7.
6)union(8.
3)unsigned(5.
1)void(3.
3.
1,5.
2.
4)volatilewhile(3.
6.
2,4.
3.
1)注:关键字auto用于说明自动变量,通常不用;volatile(易变的)表示该变量不经过赋值,其值也可能被改变(例如表示时钟的变量、表示通信端口的变量等).
2,基本类型(2.
3,5.
1,7)C语言的基本类型包括下面列出的类型,字符类型和各种整型对应的无符号类型,还有各种指针类型,关于指针类型的介绍见第七章.
字符类型短整数类型整数类型长整数类型charshortintintlongint浮点数类型双精度浮点数类型长双精度浮点数类型floatdoublelongdouble注:(1)字符类型和所有整数类型都有对应的无符号类型,类型名加unsigned;(2)shortint和longint可以分别简写为short和long;(3)unsignedint类型可以简写为unsigned.
3,字面量的书写形式(2.
3,5.
1)字面量是程序里直接写出的数据,包括各种整数、浮点数、字符和字符串.
整数(各种整型的字面值)由一串数字构成.
第一个数字不是0的是十进制数;以0开头的是八进制数;以0x或0X开头的数字序列表示十六进制数.
加字母u或U后缀表示无符号整数;加字母l或L后缀表示长整数.
(2.
3.
1,5.
1)浮点数(float、double和longdouble类型的字面值)的基本部分包括一个整数部分,一个小数点和一个小数部分.
此后可以有一个指数后缀,其形式是字母e或E后跟一2个可以带符号的整数,表示十进制的指数值;最后还可以有一个字母f,F,l或L作为类型后缀.
f或F表示是float类型的字面量,l或L表示是longdouble类型,无后缀是double类型.
整数或小数部分两者可以缺一个,小数点和指数部分两者可以缺一个.
(2.
3.
2,5.
1)字符是单引号括起来的一个字符,特殊字符的写法见下面的特殊字符表.
(2.
3.
3)字符串字面量是由一对双引号界定的一个字符序列,其中可以写各种能直接写出来的字符,以及按下表列出的换意序列方式描述的特殊字符.
以换意序列描述的特殊字符包括:换行符:\n水平制表符:\t垂直制表符:\v退格符:\b回车符:\r换页符:\f鸣铃符:\a反斜线符:\\问号:\单引号:\'双引号:\"任意字符均可以用换意符号(反斜线符)后跟八进制或十六进制表示,形式为:八进制表示:\ooo十六进制表示:\xhh其中ooo表示三位八进制数字,最左一位只能是0到3;hh表示两位十六进制数字,0到9以及A到F或a到f.
4,运算符与表达式所有运算符的优先级及结合方式见附录A.
下面给出各运算符的简单意义,并列出有关它们的讨论所在的章节.
运算符意义章节运算符意义章节()括号,函数[]数组成分6.
1.
2->由指针取结构成分8.
1.
3.
结构成分8.
1.
2!
逻辑非3.
4.
3~字位取反5.
5++增量3.
7.
1--减量3.
7.
1+(一元)正号2.
4.
1-(一元)负号2.
4.
1&(一元)取地址7.
1.
1(类型)类型强制2.
4.
4sizeof数据或类型的大小6.
2*算术乘2.
4.
1/算术除2.
4.
1%求余数(取模)2.
4.
1+(二元)算术加2.
4.
1-(二元)算术减2.
4.
1>字位右移5.
5大于3.
4.
1>=大于等于3.
4.
1==等于3.
4.
1!
=不等于3.
4.
1&(二元)字位与5.
5^字位异或5.
5|字位或5.
5&&逻辑与3.
4.
3||逻辑或3.
4.
3:条件运算符3.
4.
2,逗号3.
7.
2=赋值3.
2.
2各种更新赋值3.
7.
3常量表达式:3常量表达式用在case后面,描述数组和字段的长度,给枚举常量指定值,给外部变量和局部静态变量提供初始值,给数组、结构变量的成分提供初始值,以及用在条件预处理命令中.
常量表达式在程序加工时被求值,这种表达式里不能包含:赋值运算符、增减量运算符、函数调用、逗号运算符.
对要求整数值的常量表达式,其中的运算对象只能是整数、枚举值、字符、sizeof表达式,浮点数常量必须强制转换到某个整型.
浮点数常量表达式的运算对象只能是整数、浮点数、字符、枚举值、sizeof表达式.
地址常量表达式应表示一个指针值,可以是外部变量、静态变量、函数的地址.
这个指针值可以是通过运算符&作用于外部或静态对象而得到的,或是由数组名、函数名直接创建的.
表达式计算的结果或者就是一个已经说明了的外部或静态变量的地址,或者是一个这种地址加或减一个常数.
创建过程中不应间接访问变量的值.
在预处理命令#if之后的常量表达式中不允许出现sizeof、枚举常量或类型强制.
5,基本控制结构这里列出C语言的各种控制结构,并给出简短的解释.
空语句只包含一个分号.
它的执行什么也不做,通常用于在程序中填补位置(3.
7.
4).
break;中止语句.
退出最内层的循环语句或者switch语句(4.
3.
2).
continue;继续语句.
停止最内层循环体的一次执行,准备开始循环的下次执行(4.
3.
2).
goto标号;转跳语句.
使程序执行立即转到指定标号处.
标号的作用范围是它所在的函数体(4.
3.
2).
return;return表达式;返回语句.
立即结束当前函数的执行,控制返回函数调用处.
第一种形式用于无返回值的函数,第二种形式用于有返回值的函数,在执行时表达式被求值,得到的值转换成函数所要求的返回值类型,作为函数的返回值(3.
3.
1,3.
2.
3,5.
2.
4).
复合语句在形式上是一对花括号,其中可以有一系列的定义或说明,后跟一系列的语句.
这两部分都可以没有(3.
1).
if(表达式)语句1if(表达式)语句1else语句2条件语句.
表达式应为算术类型或指针类型.
首先对表达式求值,若得到的值非0就执行语句1部分;若得到值0,有else部分时执行语句2,否则整个条件语句立即结束(3.
6.
1).
while(表达式)语句当循环语句.
表达式应为算术或指针类型.
首先对表达式求值,得到值0时整个循环语句立即结束;得到非0值时执行语句部分,然后重复这整个过程(3.
6.
2).
4do语句while(表达式);首先执行语句,执行完毕后对表达式求值.
当求出的值非0时重复前面的过程;否则整个语句结束.
这里的表达式也必须是算术类型或指针类型的(4.
3.
1).
for(初值表达式;条件表达式;步进表达式)语句首先求值初值表达式.
然后顺序地反复做:求值条件表达式,执行语句,求值步进表达式.
一旦某次条件表达式求出值0,整个结构的执行就立即结束.
这里的条件表达式必须是算术类型或指针类型的(3.
6.
3).
switch(表达式){case常量表达式:语句序列case常量表达式:语句序列.
.
.
}这里的复合语句称为switch的体,"case常量表达式:"称为case标号.
表达式和常量表达式(称为case常量)可以是各种字符类型或整型,一个switch语句的各个case后的常量表达式的值必须互不相同.
语句的执行过程是:首先求值表达式,用这个值顺序与各case常量表达式的值比较.
发现相等时,就从该标号case后的语句序列开始执行.
switch体中可以有一个default标号,当所有case标号都不匹配时执行转到default标号处.
如果没有default标号,没有标号匹配时整个语句立即结束.
人们通常在每个语句序列的最后放一个break语句,使语句序列执行完毕时执行能退出switch语句.
如果被执行序列的最后没有break语句,执行将进展到随后的语句(case标号的作用就像是普通标号,只表示一个位置).
语句序列可以是空(4.
5).
6,变量的定义与说明简单变量定义及初始化问题见(3.
2.
1,3.
2.
3,5.
3.
5),数组定义及初始化见(6.
1.
1,6.
1.
2),指针变量的有关问题见(7.
1),结构变量、联合变量见(8.
1.
1,8.
3等).
各种变量有关情况请参看:自动变量(3.
2.
1,5.
3.
2,5.
3.
3),寄存器变量(5.
3.
5),外部变量(5.
3.
1,5.
3.
2,5.
3.
5),局部静态变量(5.
3.
4),外部静态变量(5.
3.
5),常变量(5.
3.
5).
变量外部说明的形式及作用参看(5.
3.
1).
7,数组、结构、联合、枚举的描述和类型说明数据描述机制:数组(6.
1.
1,6.
5)、结构(8.
1.
1)、联合(8.
3)、枚举(8.
4).
类型定义的有关问题见(7.
6,7.
7,8.
1.
1),复杂类型的描述和解读见(7.
8).
8,函数定义、调用和原型说明函数定义的基本形式是:返回值类型函数名参数表函数体其中函数名是一个标识符;函数体是一个复合语句;参数表由一对圆括号界定,内有一系列的参数描述,每个描述说明了函数的一个形式参数的名字和它的类型.
描述间用逗号分隔.
无参函数的参数表可以写为()或(void)(3.
3,3.
5,5.
2).
函数调用是一种基本表达式,它的形式是:函数名实际参数表其中实际参数表由一对圆括号界定,里面是一系列的实际参数表达式,表达式间用逗号分隔.
无参函数的调用形式是函数名之后跟一对空的圆括号(3.
3,3.
5,5.
3).
函数原型的书写形式、意义和作用请参看(5.
2.
6,5.
2.
7,5.
2.
8,8.
6).
59,预处理命令预处理命令中最常用的是文件包含#include(5.
4.
1),宏定义#define(5.
4.
2)和一组与条件保留有关的命令#if、#elif、#else、#endif(5.
4.
3).
另两个命令#ifdef、#ifndef也用在条件保留方面:#ifdef标识符等价于#ifdefined标识符#ifndef标识符等价于#if!
defined标识符与#define有关的还有两个特殊运算符#和##.
C语言的预处理命令还有#line、#error和#progma.
有的命令主要是用于编写生成C程序的程序.
读者要了解这方面的情况,请查看参考文献[1][2].
C预处理部分还提供了几个特殊的预定义常量,这些常量比较特殊,它们的形式类似,前后都有两个下划线符号.
有关常量列在表里:__LINE__值为一个整数,表示出现位置的行号__FILE__值为字符串,是被编译的文件名(本文件的名字)__TIME__值为字符串,以"hh:mm:ss"形式表示的当前时间__DATE__值为字符串,以"Mmmddyyyy"形式表示的当前日期__STDC__对于标准的C语言实现,值为110,标准函数库有关库函数及其相关问题请参看有关章节的介绍:标准流输入输出(9.
3)伪随机数生成(5.
5)文件输入输出(9.
2)动态存储管理(7.
5.
2)输入输出的格式描述(9.
3.
2,9.
3.
3)执行控制(9.
5.
2)直接输入输出(9.
2.
5)与环境交换信息(9.
5.
2)文件定位(9.
2.
3)查找与排序(9.
5.
2)输入输出出错处理(9.
2.
4)整数带余除操作(9.
5.
2)各种数学函数(2.
5.
2,9.
5.
1)时间处理(4.
2.
4,9.
5.
3)字符类型判断(6.
4.
4)与实现有关的规定(9.
5.
4)字母大小写转换(6.
4.
4)条件诊断(9.
5.
5)字符串操作(6.
4.
4,9.
5.
1)变长参数表函数的定义(9.
5.
6)存储区操作(9.
5.
1)非局部控制转移(9.
5.
7)串数据转换(9.
5.
2)异常条件与处理(9.
5.
8)本书没有介绍的标准库函数包括:与本地化有关的类型与函数、多字节处理函数、有变长度表类型va_list参数的输入和输出函数等.
需要进一步了解这些函数的读者请参看参考文献[1]或[2].
6

Sparkedhost($8/月)美国迈阿密AMD Ryzen高性能VPS;免费100G高防

sparkedhost怎么样?sparkedhost主机。Sparkedhost于2017年7月注册在美国康涅狄格州,2018年收购了ClynexHost,2019年8月从Taltum Solutions SL收购了The Beast Hosting,同年10月从Reilly Bauer收购了OptNode Hosting。sparkedhost当前的业务主要为:为游戏“我的世界”提供服务器、虚拟...

百星数据(60元/月,600元/年)日本/韩国/香港cn2 gia云服务器,2核2G/40G/5M带宽

百星数据(baixidc),2012年开始运作至今,主要提供境外自营云服务器和独立服务器出租业务,根据网络线路的不同划分为:美国cera 9929、美国cn2 gia、香港cn2 gia、韩国cn2 gia、日本cn2 gia等云服务器及物理服务器业务。目前,百星数据 推出的日本、韩国、香港cn2 gia云服务器,2核2G/40G/5M带宽低至60元/月,600元/年。百星数据优惠码:优惠码:30...

7月RAKsmart独立服务器和站群服务器多款促销 G口不限量更低

如果我们熟悉RAKsmart商家促销活动的应该是清楚的,每个月的活动看似基本上一致。但是有一些新品或者每个月还是有一些各自的特点的。比如七月份爆款I3-2120仅30美金、V4新品上市,活动期间5折、洛杉矶+硅谷+香港+日本站群恢复销售、G口不限流量服务器比六月份折扣力度更低。RAKsmart 商家这个月依旧还是以独立服务器和站群服务器为主。当然也包括有部分的低至1.99美元的VPS主机。第一、I...

字母大小写转换为你推荐
ASPSESSIONIDasp杭州市网易yeah支持ipadflashfxpflashfxp怎么用?http500http 500是什么意思?phpadmin下载phpMyAdmin 软件下载地址新iphone也将禁售iPhone8plus在2020年还会有货吗360邮箱lin.long.an@360.com是什么邮箱人人视频总部基地落户重庆迁户口入重庆申请支付宝账户申请支付宝账号注册
美国vps推荐 网易域名邮箱 新网域名管理 budgetvm net主机 什么是刀片服务器 免费活动 hdd 酷番云 申请网页 1元域名 河南移动梦网 下载速度测试 国内域名 数据库空间 大化网 apnic 北京主机托管 rewritecond googlevoice 更多