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所在内存的地址      注意:字符串是常量,不能通过该内存地址修改字符串的值

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

相关文章推荐

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

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

C语言字符串指针(指向字符串的指针)

C语言中没有特定的字符串类型,我们通常是将字符串放在一个字符数组中,这在《C语言字符数组和字符串》中已经进行了详细讲解,这里不妨再来演示一下: #include int main(){ ...

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

C语言中的类型转换 在表达式中常遇到类型的转换,包含自动类型转换与强制类型转换,在C语言开发过程中,很多的开发人员往往会忽略数据类型的自动转换(即隐藏的),造成表达式在逻辑并看不出什么错误,而表达...

我的小小学习笔记(1)之C语言--sizeof&strlen(1)

1.字符串结束标志  '\0',不能算作字符串内容,所以字符串长度不算'\0'。    “”

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

1、c语言结构的剖析         1.1、文件后缀格式             源码: .c 标准c源码        .c...

C语言学习笔记整理(二)

C语言学习笔记整理(二) 1、指针交换两个数的函数 #include void swap(int* x, int* y) { int t; t = *x; *x =...

C语言深度剖析学习笔记-指针、数组、内存、函数

指针与数组指针就是一个变量

C语言学习入门 (三) sizeof 函数、内存地址、数组

sizeof可以用来计算一个变量或者一个常量、一种数据类型所占的内存字节数。 sizeof(10); char c = 'a'; sizeof(c); sizeof(float); 地址 ...

C语言学习笔记——调用函数时提示警告

【代码】 int main() { abc(); abc3(); return 0; } void abc() { int a=65135; double i=8256.6...

C语言学习入门 (二) 语句和运算符

C语言的基本语句跟Java中的差不多 循环语句(do while、while、for)条件语句(if 、if-else、switch)goto语句  (比如在循环外 定义一个标记 Exit:; ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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