A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 李艳兵 中级黑马   /  2015-8-15 21:23  /  425 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1.二维数组:是用来存储一组数据同意管理起来
         定义:类型 数组名[数组的数量][子数组的长度]
         特点:与数组基本一样,但传递数组时传递的是地址
                 子数组数量控制行数,单个子数组长度控制列数
                 每个子数组类型及长度一致
2:冒泡排序思路:1.让第一个元素与后一个数比较,如果打则交换位置,依次类推
                       2.每一次比完之后,最后一个元素就是这个数组的最大值
                       3.继续让第一个元素与后面的每一个元素比较,之前已经找出最大不用比较
                       4.每一个元素都比较完后,排序完成

3.字符串:是一个'\n'字符数组
       定义及初始化:char arr[] = "abc";或char arr[4] = {'a','b','c','\0'};
      输出 printf("%s\n",s);或printf("%s\n",&arr[0]);赋值:strcpy(字节变量名,"字符串");
       特点:后面必须有"\0"结尾;否则只算普通的字符数组,但"\0"不会输出,只会表示字符串结束
               字符串输出占位用%s必须遇到\0才能结束;否则会继续输出更高位地址值的字符
                strlen函数用于计算一个字符串的长度(字符数量),使用必须引入(string.h)
                strlen不会计算\0,且碰到\0结束,但sizeof不受\0影响.且长度会包含\0
                字符串一定是字符串数组,但字符数组不一定是字符串

4.指针;严格上来讲,指针具有,两层含义;一是指一种数据类型,二是值一种保存地址的变量
  有什么用;用于存储某一个地址,从而可以通过地址直接对该地址内存空间中的数据进行操作
  怎么用:定义:类型 *指针名 ;如int *p;表示定义一个能存int类型地址的指针变量,名字叫p
            赋值:指针变量名 = 指针(地址),注意;指针获取方法(&变量名)
        什么时候用:当需要存储地址,以便于操作该地址及地址对应内存数据说的时候
        特点:指针本身也有地址,指针定义后,自身地址不变,但里面存的地址可以变化
                &p表示指针自身地址,而p表示指针存的地址,*p表示指针所存地址的内存空间
                  指针不初始化赋值不要使用,未赋值前地址是随机的,未赋值不可以使用*p
                  *修饰什么就表示是什么的地址,判断原则:先确定变量的类型(根据符号优先级)
                  指针是什么类型,就应该存什么类型的地址,否则*p取对应内存空间的值会出错
         

5.指针与数组:
      什么是指针数组:表示一个数组,用来存指针的数组就叫指针数组,数组里面的元素都是指针
          如int *p[];表示定义一个可以存三个int指针的数组
           赋值:int  a1 = 1;a2 = 2,a3 = 3,;int *p[3] = {&a,&b,&c};取值int *a = p[0];
      什么的数组的指针:表示一个指针,而这个指针类型是数组
              如 int (*p)[3] ;表示这是一个含有三个元素的int数组的指针
              赋值:int arr[3] = {1,2,3};int (*p)[3] = &arr;
    什么是数组元素的指针
         表示一个指针,而这个指针存的是数组一个元素的地址,int arr[1]  = {1};int *p = &arr[0]
      特点:数组名表示第一个元素的地址,&数组名表示整个数组的地址,二者值相同,但意义不同,
               指针可以运算,但仅限于加减运算,运算的实质就是地址的运算,及地址的移动
               地址(+1)向高位移动,而(-1)向低位移动,不同指针类型移动一位(+1或-1)的字节数不同
               实际移动的字节数看指针类型,类型占多少字节,一位就移动多少字节        

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马