C_笔记整理_3

来源:互联网 发布:程序员写博客写什么 编辑:程序博客网 时间:2024/06/04 22:10
  1. 数组与数组指针的区别
    一维数组使用一级指针
    二维数组使用数组指针,不能使用二维指针

  2. 数组指针与指针数组

    • 数组指针:
      int a[2][3];
      char (*pa)[3] = a; //占4个字节,只有一个首地址,只保存一个地址
    • 二级指针:
      char c = 'x';
      char* pc = &c;
      char** ppc = &pc;
    • 指针数组:
      char a = 'x';
      char b = 'y';
      char c = 'z';
      char* pb[3] = {&a,&b,&c};//三个变量分别存放在3个地址,占3x4个字节
  3. gdb调试

    • gcc -g sort.c -o sort //-g:debug
    • gdb -q sort //-q:不输出配置信息
      start //开始
      b 22 //在22行打断点
      run //运行程序
      s //step 下一步
      n //next 下一步(不进入子函数)
      p/d i //i的十进制输出
      //d 数字,字符
      //s 字符串
      //x 地址
    • 有参数的main函数调试:
      b22 //先设置断点
      set args 123 345 //设置main函数参数
      run //执行程序
  4. main函数的参数
    int main(){}
    int main(void){}
    int main(int argc,char* argv[]){}
    int main(int argc,char** argv){}

原创粉丝点击