书接上回~
目录
1.字符和字符串
声明字符串:
char name [5];
给字符串赋值:
name[0] = 'S';
name[1] = 't';
name[2] = 'u';
name[3] = 'd';
name[4] = 'y';
定义字符串:
char name [5] = ={'S','t','u','d','y'};
#include <stdio.h>
int main()
{
char a[6] = {'S','t','u','d','y','\0'};//为了确定字符串在内存里面的结束位置,C语言规定,在字符串的最后加上 '\0' 表示结束。
printf("%s\n",a);
printf("Hello\n");
return 0;
}
#include <stdio.h>
int main()
{
char a[] = {"Study"};//可以不用加结束字符。
printf("%s\n",a);
printf("Hello\n");
return 0;
}
2.算数运算符
C语言通过提供运算符来支持我们对数据进行处理
运算符 | 名称 | 例子 | 结果 |
+ | 加法运算符(双目) | 5+3 | 8 |
- | 减法运算符(双目) | 5-3 | 2 |
* | 乘法运算符(双目) | 5*3 | 15 |
/ | 除法运算符(双目) | 5/3 | 1 |
/ | 除法运算符(双目) | 5.0/3.0 | 1.666667 |
% | 求余运算符(双目) | 5%3 | 2 |
% | 求余运算符(双目) | 5.0%3.0 | 出错 |
+ | 正号运算符(单目) | +5 | 5 |
- | 负号运算符(单目) | -5 | -5 |
- 目?
- 1 + 2 :“1”和“2”是操作数,“+“是操作符,两边有两个操作数的称为双目
表达式 :用运算符和括号将操作数连接起来的式子称为表达式。
1 + 1
'a' + 'b' (字符a加字符b)
a + b (变量a加变量b)
运算符的优先级
举例说明一下:
#include <stdio.h>
#include <math.h>
int main()
{
int i, j, k;
i = 1 + 2;
j = 1 + 2 * 3;
k = i + j + -1 + pow(2,3); //3 + 7 +(-1) + 8
printf("i = %d\n",i);
printf("j = %d\n",j);
printf("k = %d\n",k);
return 0;
}
3.类型转换
当一个运算符的几个操作数类型不同时,编译器需要在进行运算之前,先将他们共同转化为某种数据类型,编译器会将占用坑位较小的操作数先转化为占用坑位较大的操作数的数据类型,然后再进行运算。
比如:1 + 2.0 == 1.0 + 2.0
#include <stdio.h>
int main()
{
printf("整型输出 = %d\n", 1 + (int)2.0); //(int)2.0 是将浮点型2.0转化为整型。
printf("浮点型输出 = %f\n",1 + 2.0);
return 0;
}
(不是)
我开玩笑哒~