C语言基础(二)

scanf double 必须是%lf

关于指针

有两种(1

    int b=2;   

    int *p=b;

        p=&b;

    printf("%d\n", *p);//输出2

            2

    int b=2;   

    int *p=&b;//此时p取到的还是b的地址,指针变量*p的值是变量b的值

    printf("%d\n", *p);//输出2


空间分配

栈区:int a ;系统自动分配空间,使用后自动消除

堆区:float *pfloat=(float *)maloc(size);

    

运算符与表达式

运算符:为了构成表达式+-*/

表达式:2+5      5*8    30          有操作数操作符构成,甚至可以是一个单一的值


运算符分类:

1、算术运算符(加、减、乘、除、取余)

9/4 取得9里面4的个数  

注意:有一个是浮点类型数,结果就是float

不能用浮点数做取余操作

2、自增自减运算符(++- -a=i++;<=>a=i;i=i+1;//注意语句执行顺序

包含两种形式(1)前置++i- -i  先执行++指令,后使用变量

                     2)后置i++i- -   先使用变量,后执行++指令

3、赋值运算符=

等号右边赋值给左边

4、二元符合运算符(在=前面添加算术运算符)

+=-=\=%=

5、操作符sizeof//用于计算数据类型在内存中占用空间的大小

printf(“%ld,%ld,%ld\n",sizeof(int),sizeof(a),sizeof(3.14)); //3.14默认为double

注意:sizeof()是操作符(运算符),不是函数

6bool数据类型:true  false

0 is false—0为假

Everything else is true —0为真

纯数据表示  false0    true1

#include "stdbool.h”//注意加上表头文件

7、逻辑运算符与、或、非

&&||、!//根据左右两边bool值来获取真实表达式bool的值

注意:&&前面为false,后边自动忽略,不再判断

           ||   前面为true,后边也是自动互留

8、关系运算符

if true{

} else …

三目运算符 max1 = a > b ? a : b ;//如果为true  max=a;如果为false  max=b;


//逗号运算符

int dn1=10;

int dn2=20;

int dn3=(dn1,dn2);//有括号取dn2

int dn4;

dn4=dn1,dn2;//没有括号取dn1


显式类型转换转换与隐式类型转换(默认转换)

int n=100;

float i=(float)n;

隐式转换

float f1=3.9;

int i1=f1;//不存在四舍五入

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值