C语言学习入门到精通之学习笔记(三)

原创 2016年06月01日 12:21:08

基本数据类型

    常量:运行过程中数据不可变

    变量:运行过程中数据可被改变

    标识符:如类型名、变量名、函数名

    1、整型

         long           4字节        范围:无符号 0-2的32次方-1    有符号 -2的31次方  -  2的31次方-1

         short          2字节    

         int             通常是4个字节,但不同的平台长度不同 

    

         signed       有符号      代表最高位当符号使用

         unsigned   无符号       代表最高位当数字使用

        

         常量: 234  默认为整型 (而不是char或short 这点需要注意)

                    234L  long类型 (长整型)

                    234U 无符号int类型

                    234UL  无符号long型

         进制:

                    二进制    在代码编写  无法直接表达    补充:0b101010110在代码中时无法表达的,很大一部分人都不注意这一点

                    十进制    123

                    八进制    0123               0 作为区分

                   十六进制 0x123              0x 作为区分

         进制转换: 十进制转其它进制 用10进制数除以进制,余数是转换后的数,商继续除进制,又有余数向前排列,直到商为0止
                          其它进制转十进制 用前面的位乘进制数,和后面的位相加,就变成了后面位的十进制,直到最后一个位计算结束   


         例子:

                  ?下面的数字哪些是长整型
                   721387821387983  0L  0xFFFFFFFFFFF 01234234252341324               
                   0L是长整型,其它都默认int
       
                   ?下面哪些常量的写法是正确的
                   2341234  0x9fkw8sw 032913  0432
                   032913 八进制中,逢8进一,所以不可能包含8以上的数
                   0x9fkw8sw 八进制中,逢16进一,所以不可能包含16以上的数

         有符号和无符号内存结构:

                   所有的数据结构在计算机中都是以补码方式存储

                   码原: 能够代表数据的2进制

                   反码: 原码2进制数取反

                   补码: 在反码的基础上+1

                   例:  7                  0b0000 0111  正整数  原码就是补码

                           -7                  0b0000 0111  //7

                                                0b1111 1000  //反码

                                                0b1111 1001 //补码 -7 也是249    有符号   

                   总结:原码是为了方便人认识数字的习惯而定义的表现方式,例如上面的例子: 正数7的原码的二进制数是0b0000 0111    -7的原码的二进制数也是0b0000 0111 ,而它们的补码是不同,补码是计算机真实存储数据时的格式。   

         变量:

                 定义: 类型 变量名[=值];

                 类型的作用,指定内存的大小,指定当前变量保存的数据类型,而变量只是这块内存的别名

                 初始化: 即分配内存的同时赋值


    2、实型

          double    双精度    8字节    小数点后15-17位

          float       单精度     4字节   小数点后6位

          常量 :

                    2.3    默认为double

                    2.3    单精度

                    2.3e+0 指数 2.3*10的0次方

    3、字符

         char    1字节    本质是无符号整型    0-255

         常量    ‘a’         一个字符        本质是ASCII编码,一个字节

         字符:用单引号括起来的一个符号

         字符串:用双引号括起来的字符序列,以\0结束(字符串是常量)

                      例:“asda” 有5个字符,包含一个\0     

         转义符:

                    单引号    ‘ \' ’     是一个字符

                    双引号    ' \" '    

                    tab 键     ‘ \t ’

                    退格键    ‘ \b ’

                    警铃       ' \a '

                    回车       ‘ \r ’

                    换行       ' \n '

                    8进制  '\ddd'  必须是三个位 d代表一个8进制位的数
                   16进制 '\xhh'  必须是2个位  h代表一个16进制位的数

         

          字符集:

                       ASCII 0-127数,代表要绘制的字符图片的编号 '\0'就是0编号
                        '\0' == 0==NULL
       
                      GBK   中国大陆字符集
                      BIG5  台湾 \香港、澳门、新加坡、美国
                      uncode  utf-8    qt android等都使用utf-8字符集
                      utf-16
                      utf-24
                      utf-32  
               
                      'A' ==65 == '\x41' ='\101' == 0x41 == 0101
       
                      字符的算术运算
                       'A'+2;
       
                      '8'+2; //56+2
                      8+2;  //8+2
                      "8"+2  //地址+2  字符串本身是第0个字符的地址  指令参数输入的是字符串
                      "asdf" 值是a所在内存的地址      注意:字符串是常量,不能通过该内存地址修改字符串的值

版权声明:本文为博主原创文章,未经博主允许不得转载。

学习笔记1—C语言的基本语法

1 C语言的程序构成方式   1)c语言程序由函数构成,每个函数可以实现一个或多个功能。 2)一个正规程序可以有多个函数,但是有且只有一个主函数。 3)函数只有在被调用的时候才执行,主函数由系统调用执...

C语言学习入们到精通之学习笔记(一)

为什么我通过博客的形式与大家分享我的学习笔记     对于c语言的学习已经有快3年之久了,对于学习嵌入式的我看来,C是我们的根本也就是我们的核心知识点,想学习好嵌入式就必须精通C语言。在一年之前我对...

慕课网c语言入门学习笔记

#include int main()新标准中是int 而非void 一个c程序中只有一个主函数,main是唯一入口 printf(); return 是函数的返回值,函数类型不同,返回值也不同 ...

单片机入门学习笔记----第一课:简单的C语言语法+流水灯实验

 第一课:流水灯实验11.201、C51常用数据类型:无符号整型:unsigned int 占16位数 取值0-65535无符号字符型: unsigned char 占8位数 取值0-2552、C51...

网易云课堂程序设计入门--C语言第七周:指针与字符串学习笔记

第七周:指针与字符串学习笔记 网易云课堂 程序设计入门--C语言

网易云课堂程序设计入门—C语言第五周 函数学习笔记

第五周 函数标签(空格分隔):程序设计入门—C语言5.1函数#include void sum ( int begin, int end ){ int i, sum = 0; for...

网易云课堂程序设计入门--C语言第一周 简单的计算程序学习笔记

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接和...

网易云课堂程序设计入门—C语言第六周 数组学习笔记

第六周 数组标签(空格分隔):程序设计入门—C语言6.1数组 写一个程序,计算用户输入的平均数,并输出所有大于平均数的数 定义数组 变量名称[元素数量]; int greads[100]; ...

慕课网c语言入门学习笔记(continue,switch,goto)

1.打一个星号图 2.打一张九九乘法表(for(;;;)打成,导致了编译错误;\n不是/n是右上角的那个向右边偏) 3.break语句 使用break语句时注意以下几点: 1、在没有循环结构的情...

C语言学习中基础知识笔记1 《c语音从入门到精通》

一.数组 1.使用字符数组保存字符串,即用一个一维数组保存字符串中的每一个字符。字符串总是以“\0”作为串的结束符。同时“\0”也将占用一个字节存入数组。 char c[]="Hello"; 这...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C语言学习入门到精通之学习笔记(三)
举报原因:
原因补充:

(最多只允许输入30个字)