注释:行注释
块注释:
(1)#if 0
#endif
(2)/* */
<>:表示系统文件
<stdlib.h>+syetem 调用windows中的程序
QT中
ctlr+I 自动对齐
ctlr+/ 自动注释
VS 2013中
system需要调用#include windows.h使用
防止命令框闪关:system("pause");
math.h 中 pow(x,y) x的y次方
字节概念:
位(0,1)简称bit --8个位>字节 简称BYTE --2个字节> 字 简称WORD --2个字> 双字 简称DWORD
sizeof():配合%lu输出,表示在内存当中所占位置大小
#define MAX 100 宏常量
const int max=0; 常量定义 max的值不能被改变
volatile 程序不会被优化
redisdter 放在寄存器中,建议指令
常量中除了字符串常量有内存地址外,其余的都没有地址
int类型占4个字节
char类型中:
" "退格一个一个末尾字符
" " 横向制表符,一个 Tab 位
输出特殊字符需要加转义字符:
char 'a’常量,内存只存一个字符 a
char a 字符变量
' ' 表示ASCII码值为0的字符
0 表示数字 0
'0'字符0标的ASCII码制为48
"0"由0字符+字符串结尾的默认值
输出类型:
putchar 输出一个字符
printf 输出一个字符串 %s 输出是一个字符串
%p输出打印地址
%和d之间加个数字,决定它输出字节数 “-” 左对齐
%c输出单个字符
%.和f之间加数字,决定输出几个小数
%p:输出某个数的地址
%d:按十进制输出:
%o:按八进制输出
%x:按十六进制输出
%u;按无符号位输出
%数字1.数字2f(lf),数字1输出字节数 数字2输出小数点数
scanf_s 输入
需要写入地址:&
输入字符时时:注意字符会被回车键接受(一般用getchar接受)
b=a++ 先做表达式值,在自加
b=++a 先自加,在做表达式
getchar() 与printf("%d",a);等待输入一个字符,然后输出他的ASCII码值
输入一个字符串:gets(a) a必须为一个字符串数组,用puts输出
变量的定义:
形式:数据类型 变量名:
变量的初始化:数据类型 变量名=初始值;
整数与整数相除一定是个整数。
输入输出文件需要包含头文件 stdio.h
输出的值一定初始化
例:i=2;j=i*i++ 得出来的值j为6;
if中:无大括号的情况下,默认带下面一个语句
switch()
{
case 常量表达式1:
语句1;
case 常量表达式2:
语句1
case 常量表达式3:
语句1
}
语句后要加break;执行符合值的语句后退出
最后加default:执行没有符合条件的default后的语句:
for(赋值语句1;判断语句2(不可缺少);表达式语句3)//没有语句2时,默认为1,进入死循环
语句1:初始运行一次->对语句2进行判断(为真进入循环体,执行语句3;为假跳出循环体)
while(表达式)//没有表达式时,直接编译不通过
负数在计算中放的是补码
原码、反码、补码:
正数的补码为源码,
负数的补码到源码:符号位不变,按位取反,再加1;
数组的定义:
类型 数组名[常量] 定义的常量个数 下角标总数为常量-1;存储地址相邻
定义方法:未对数组进行复制,电脑随机分配数
只定义一部分,数组后面只默认为零
数组名[常量]={值} 数组统一赋值
数组名[]={值,值二.......} 常量由值数决定
"asdsad"后面自带