C/C++实践笔记 007
进制输出
自己写一个_itoa 进制转换
void main()
{
int num = 0;
scanf("%d", &num);
printf("num=%i", num); //%d,%i一样的效果
char str[32] = { 0 };
_itoa(num, str, 2); //字符串,第一个整数,str字符串,2
printf("\n%s", str);
system("pause");
}
// <1.txt等价于用1.txt来输入
// >2.txt等价于用2.txt来输出
操作数、运算符与表达式
运算符不可以相邻,+-有时候当做正负数
乘号不可以省略
#include<stdio.h>
#include<stdlib.h>
void main()
{
printf("%d", 1 + 3);
printf("\n%d", (int)(3.5 * 2));
getchar();
}
只有整数才可求模
求模的用途:
#include<stdio.h>
#include<stdlib.h>
void main()
{
int num = 95;
int g = num % 10;
int s = num / 10;
printf("%d", g * 10 + s);
getchar();
}
赋值运算符
有内存实体的变量才能被赋值
被赋值的值称为左值
能放在赋值号右边给其他变量赋值的值叫做右值
左值一定能当做右值
+=中间不可以有空格
表达式结合方向:自右向左
赋值会自动完成数据类型转换
右边的值会转换为左边的数据类型
如:int a=10.998;
则打印出a的值为10
自增自减运算符
num++ 先调用,再自增
++num 先自增,后调用
void main(){
int num=10;
printf("%d",num++);
printf("\n%d",num);
getchar();
}
打印出结果:
10
11
void main(){
int num=10;
printf("%d",++num);
printf("\n%d",num);
getchar();
}
打印出结果:
11
11
++只能用于变量,5++是错误的写法,寄存器里的值不能进行++
++的优先级优先于加减乘除