指针与文件2019-08-04

目的:

学习C语言中的重难点知道点指针,以及结构体、文件使用等,增加对C语言的理解与运用。

技术:

1.指针:

(1)(C++中最难的是指针 多继承)

c指针:为什么要指针   (必须了解 它的地址和内存空间):指针解决跨区域(不同作用域 不同代码块)之间的数据交换

‘*’:1.申明/定义变量的时候 表是一个指针变量

        float b = 20;int c = 10;int *a;

定义一个指针变量 指向的内存空间只能存放整数     注意:定义指针变量的时候一定要赋初值

int *a = b;//不行 指针变量只能存地址 不能存具体值   int *a = &b;//不行 整形指针只能存整数数据的地址    int *a = &c;//ok

float *d =NULL;NULL指向内存的起始地址 0x00

      2.除了定义指针变量之外 都是访问某个地址的值

        int *temp = &c;//定义指针变量    *temp = 21;//访问temp地址里面的数据 赋值为21

‘&’:重点:指针变量在内存空间中站8个字符    printf("%p",&score);//打印地址

(2)指针与数组的关系:

 数组名并不是一个变量 没有分配内存空间 int a = 10;   指针变量是有内存空间

 定义一个数组 系统会分配内存空间 可以存值

  int num[10] = {};

  定义一个指针变量 只为变量本身分配8个字节内存空间

  无法存值,因为没有为他分配可以存值的内存空间

    int *p;

(3)如果想给指针指向的区域赋值

    1.指针变量已经指向某块区域

    int a3 = 10;   int *pA = &a3;  //指向变量a的内存地址   *pA = 30;

    2.指针指向一个数组

    int num2[10] = {}; int *pNum = num2; //指向数组num2的首地址  

    *(pNum+0) = 20;   pNum[0] = 20;  *(pNum + 1) = 30;  pNum[1] = 30;

    3.动态分配内存 malloc realloc free(导入#include"stdlib.h")

2.结构体:

结构体是一种数据类型 复合数据类型,关键词:struct

eg:申明一种类型 struct  Person

3.文件:

(1.打开文件):


2、3、4:

心得:

经过几天的复习,把C语言系统地复习了一遍,不仅让我捡回了失去的知识,而且加深了知识点印象以及学习了一些新的知识点,最重要的锻炼了自己编程的能力,以前差不多都是理论学习,很少逼着自己去实际编写代码,现在除了上课之外每天晚上大概都有五六个小时用在了编程上,顶不住哦,但过来了收获很大,感jio不亏怕?

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 指针是C语言中广泛使用的一种数据类型。 运用指针编程是C语言最主要的风格之一。利用指针变量可以表示各种数据结构; ...
    朱森阅读 8,794评论 3 44
  • 1. 变量 不同类型的变量在内存中占据不同的字节空间。 内存中存储数据的最小基本单位是字节,每一个字节都有一个内存...
    C语言学习阅读 5,069评论 0 4
  • void* 类型指针:通用变体类型指针;可以不经转换,赋给其他指针,函数指针除外;malloc返回的就是void*...
    冰吉凌阅读 8,643评论 0 18
  • 1.语言中变量的实质 要理解C指针,我认为一定要理解C中“变量”的存储实质, 所以我就从“变量”这个东西开始讲起吧...
    金巴多阅读 5,830评论 0 9
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 13,793评论 1 32