C语言中类型.运算符.表达式
2016-07-29 06:50
204 查看
类型.运算符.表达式
变量名
1. 名字是由字母和数字组成,第一个字符必须是字母,下划线”_”被认为是字母2. 大小写字母有区别,变量名用小写,符合常量全部使用大写字母
3. 变量名不要以”_”开头,为了提高可读性,以“字母_字母”为好
数据类型和长度
1. Char字符型:占用一个字节2. Int整型:反映机器中整数类型的自然长度
3. Float类型:单精度浮点类型
4. Double类型:双精度浮点类型
5. Short int si;
6. Long int li;
Short类型通常是16位,long类型通常是32位,int类型可以是16位或者32位
在位数上:Short<int<long
Signed和unsigned,限定任何整型和char类型,unsigned类型的数总是正的或者0
Long double类型表示高精度浮点数
常量
1. int类型常量:33442. long类型常量:9876654321L
3. 无符号常量以字母u或者U结尾
4. 浮点数常量:89.89
进制问题
整数类型表示:35--10进制(35),8进制(035),16进制(0x1f),
字符常量
1. 一个字符常量就是一个整数
2. 字符常量也叫字符串字面值,也就是字符序列,”hello”, ””等等;‘x’这是整数,”x”字符
声明变量
所有变量必须先声明后使用,声明变量会规定变量的类型,Int lw1,lw2,lw3; <====>int lw1; int lw2; int lw3;
声明变量初始化
int i = 22;
char c=’h’;
如果不是自动变量,则变量只能初始化一次,也可以使用const修饰,表示该变量不可以被修改,const修饰的数组元素也都不可以被修改:
const int i=33;
const double d=3.14;
const char msg[]=’hello’;
运算符
算术运算符+ | - | * | / | % | ++ | -- |
#include <stdio.h> int main() { /* 除号运算 */ int i=10,j=3; int res=i/j; int res2=i%j; printf("%d,----,%d",res,res2); return 0; } |
关系运算符
== | != | <= | >= | < | > |
#include <stdio.h> main() { int a = 20; int b = 10; int c ; if( a == b ) { printf("Line 1 : a 等于 b\n" ); } else { printf("Line 1 : a 不等于 b\n" ); } if ( a < b ) { printf("Line 2 : a 小于 b\n" ); } else { printf("Line 2 : a 不小于 b\n" ); } if ( a > b ) { printf("Line 3 : a 大于 b\n" ); } else { printf("Line 3 : a 不大于 b\n" ); } /* 改变 a 和 b 的值 */ a = 10; b = 20; if ( a <= b ) { printf("Line 4 : a 小于或等于 b\n" ); } if ( b >= a ) { printf("Line 5 : b 大于或等于 b\n" ); } } |
Line 1 : a 不等于 b Line 2 : a 不小于 b Line 3 : a 大于 b Line 4 : a 小于或等于 b Line 5 : b 大于或等于 b |
假设A为真,B为假
&& | 称为逻辑与运算符。如果两个操作数都为真,则条件为真。 | (A && B) 为假。 |
|| | 称为逻辑或运算符。如果两个操作数中有任意一个非假,则条件为真。 | (A || B) 为真。 |
! | 称为逻辑非运算符。用来逆转操作数的逻辑状态。如果条件为真则逻辑非运算符将使其为假。 | !(A && B) 为真。 |
#include <stdio.h> main() { int a = 5; int b = 20; int c ; if ( a && b ) { printf("Line 1 - 条件为真\n" ); } if ( a || b ) { printf("Line 2 - 条件为真\n" ); } /* 改变 a 和 b 的值 */ a = 0; b = 10; if ( a && b ) { printf("Line 3 - 条件为真\n" ); } else { printf("Line 3 - 条件不为真\n" ); } if ( !(a && b) ) { printf("Line 4 - 条件为真\n" ); } } |
= | 简单的赋值运算符,把右边操作数的值赋给左边操作数 | C = A + B 将把 A + B 的值赋给 C |
+= | 加且赋值运算符,把右边操作数加上左边操作数的结果赋值给左边操作数 | C += A 相当于 C = C + A |
-= | 减且赋值运算符,把左边操作数减去右边操作数的结果赋值给左边操作数 | C -= A 相当于 C = C - A |
*= | 乘且赋值运算符,把右边操作数乘以左边操作数的结果赋值给左边操作数 | C *= A 相当于 C = C * A |
/= | 除且赋值运算符,把左边操作数除以右边操作数的结果赋值给左边操作数 | C /= A 相当于 C = C / A |
%= | 求模且赋值运算符,求两个操作数的模赋值给左边操作数 | C %= A 相当于 C = C % A |
<<= | 左移且赋值运算符 | C <<= 2 等同于 C = C << 2 |
>>= | 右移且赋值运算符 | C >>= 2 等同于 C = C >> 2 |
&= | 按位与且赋值运算符 | C &= 2 等同于 C = C & 2 |
^= | 按位异或且赋值运算符 | C ^= 2 等同于 C = C ^ 2 |
|= | 按位或且赋值运算符 | C |= 2 等同于 C = C | 2 |
sizeof() | 返回变量的大小。 | sizeof(a) 将返回 4,其中 a 是整数。 |
& | 返回变量的地址。 | &a; 将给出变量的实际地址。 |
* | 指向一个变量。 | *a; 将指向一个变量。 |
? : | 条件表达式 | 如果条件为真 ? 则值为 X : 否则值为 Y |
表达式
赋值表达式a = a+2; <==> a+=2;
x* = y+2; <==> x = x*(y+2);
条件表达式
if(a>b);
c=a;
else
c=b;
这里<==> c = (a>b)?a:b;
#include <stdio.h> int max(int a,int b); int main() { int a=1,b=2,c; c=max(a,b); printf("%d",c); return 0; } int max(int a,int b){ if(a>b) return a; else return b; } |
优先级问题
后缀 | () [] -> . ++ - - | 从左到右 |
一元 | + - ! ~ ++ - - (type)* & sizeof | 从右到左 |
乘除 | * / % | 从左到右 |
加减 | + - | 从左到右 |
移位 | << >> | 从左到右 |
关系 | < <= > >= | 从左到右 |
相等 | == != | 从左到右 |
位与 AND | & | 从左到右 |
位异或 XOR | ^ | 从左到右 |
位或 OR | | | 从左到右 |
逻辑与 AND | && | 从左到右 |
逻辑或 OR | || | 从左到右 |
条件 | ?: | 从右到左 |
赋值 | = += -= *= /= %=>>= <<= &= ^= |= | 从右到左 |
逗号 | , | 从左到右 |
相关文章推荐
- C语言教程第二章: 数据类型、运算符、表达式
- AaronYang风格 C语言挑讲[二][基本类型、运算符和表达式]
- (C语言教程)第二章: 数据类型、运算符、表达式
- 数据类型,运算符和表达式02 - 零基础入门学习C语言03
- 数据类型,运算符和表达式01 - 零基础入门学习C语言02
- C语言教程---第二章: 数据类型、运算符、表达式
- 数据类型,运算符和表达式04 - 零基础入门学习C语言05
- C语言---程序的一般形式、数据类型、常量变量、运算符、表达式、格式化输入输出
- 作业《IOS_C语言》进制,C数据类型,常量类型,运算符,表达式,格式化输入输出
- 数据类型,运算符和表达式03 - 零基础入门学习C语言04
- C语言教程第二章: 数据类型、运算符、表达式
- c语言数据类型、运算符、表达式
- iOS开发学习笔记 2-2 C语言部分 类型、运算符与表达式
- C语言:数据类型、运算符和表达式
- 《IOS_C语言--进制,C数据类型、常量、变量、运算符、表达式、格式化输入输出》
- C语言--第二篇类型、运算符与表达式
- 前期C语言回顾 进制、C数据类型、常量变量、运算符、表达式、格式化输入输出
- [C语言-01]数据类型、运算符与表达式
- [TwistedFate]C语言学习:C数据类型,常量变量,运算符,表达式,输入输出
- 数据类型,运算符和表达式03 - 零基础入门学习C语言04