c语言基础与提高(一)数据类型,混合运算,运算符,以及几种基本判断,循环语句

今天学习的内容内容比较多,为了节省十日,提高效率,di代码采用截图fa方式呈现,这样更直观,更明了,下面是jin'今天所学内容:

 数据类型(32位操作系统中)
 int                      4个字节       32位(一个字节8位)

float                    4个字节      ~

double                8个字节       ~

char                    1个字节          ~

enum                 枚举型(可能不占字节,系统运行错误)

求关键字长度  vim sizeof.c

运行后得出:

内存:以字节为单位,每一个字节都拥有一个地址,一个地址8位。

无符号(unsigned)都是正数   有符号(signed):-~+.

   signed     char                        8位        -128~127(有符号的可以省略不写signed)

unsigned char                           8位         0~255

signed short                              16位        -32768~32767

unsigned short                          16位          0~65535

char int 默认有类型转换

vim strlen.c

 

运行后:

从此程序中可以看出,strlen遇到\0时结束,\0是字符串结束标志,从第二段代码看出,\0不占用字节,从第三段代码可以看出,da当遇到0则自动结束。

如下程序:

运行程序:

代码太多了。。。不一一罗列了,

C语言中const:修饰只读变量

const int a; 不能通过变量a 修改对应内存的值

比如将 int a=1;修改成 const int a=1 会报错。因为其为只读变量,不可以修改。

拿变量a举例,进入其内存的方式有两种,一种是通过变量名a,另一种是通过其地址进入内存,所以当其被const修饰时,可以通过(指针)去修改a对应的值。

volatile:防止编译时被优化

比如 int a;

        a=0;

        a=1;da当执行此程序时,会先zhi'执行a=0;再执行a=1,则上一条就被优化了。

ASCLL数值

范围:0-255

"\0“为转义字符

”\n"换行

”\t"水平制表(制作一个空格键)

所有字符串都有\0,”a"占两个字节

char str[5] = "CHINA" 会出错,因为其占6个字节,隐藏了一个\0。

强制类型转换:

const int b=1

int *p=&b (对其进行强制强制类型转换)———int *p= (int *) &b

运算符部分

%c: 字符

%s:字符串

%d 有符号整形

%u 无符号整形

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值