2019-08-03

路漫漫其修远兮,吾将上下而求索;

敲代码和学写程序语言对与我来说,只能是:学海无涯苦作舟,书山有路勤为径啊 哎哎哎!!!

今天想讲的是:指针   结构体    文件

指针:所谓的C语言指针,我们的第一印象就是我们为什么要指针

            指针就是地址,由于通过地址能找到所需的变量单元,地址指向该变量单元(如同说,一个房间号“指向”,,某一房间一样)。所以将地址形象化的称为“地址”。意思通过它能找到以它为地址的内存单元。

*’:1.在声明或定义变量时表示定义一个指针变量

        float b=20;

int c=10;

        int *a;定义一个指针变量 指向的内存空间只能存放整数

    注意:定义指针变量的时候一定要给初值  不确定就给NULL

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

    int *a=b;这个是不行的 指针变量只能存地址  不能存具体值

int *a=&b;这个还是不行 整形指针只能存整形数据的地址

int *a=&c;正确

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

  如:int *temp=&c;//定义指针变量1

      *temp=21;访问temp地址里面的数据 赋值为21

‘&’:取某个变量的地址

/*数组和 指针的关系

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

  指针变量是有内存空间*/

如果想给指针指向的区域赋值,有以下三种方法:

1.

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

2.

指针指向一个数组

3.

由自己分配一个内存空间,但注意当指针用完的时候就要自己释放内存空间,前面的是由系统来释放

结构体:C语言允许用户自己建立由不同类型数据组成的组合型的数据结构,它成为结构体

struct

//声明一种类型  struct Person(struct是声明结构体类型是必须使用的关键字,不能省略

声明一个结构体类型的一般形式为:

struct 结构体名

{成员列表};(大括号内是该结构体所包括的子项,称为结构体的成员(member))。

如:

name,addr,age都是成员

定义结构体类型变量 :

图中这里原本是出错的, "const char *" 类型的值不能用于初始化 "char *" 类型的实体,我直接进行了强制类型转换


接上一张图片,这里的malloc是一个动态内存分配,上面有写

文件:这里打开文件有以下几个步骤:



图中蓝线的部分运行它可在桌面上产生一个abc.txt的文件


由于这里我还没有弄明白,所以就不说啦。

总结:学到c语言的指针,结构体,文件这里就像有点往c的深处摸索,感觉如果能把他们学好的话,c就应该掌握了很大一部分,但我现在感觉连皮毛都还没学好,哎。加油吧。骚年!@

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

推荐阅读更多精彩内容

  • 指针是C语言中广泛使用的一种数据类型。 运用指针编程是C语言最主要的风格之一。利用指针变量可以表示各种数据结构; ...
    朱森阅读 8,799评论 3 44
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 13,794评论 1 32
  • 目的 初步掌握C语言指针和结构体的定义和使用 指针 指针的灵活运用使得c语言更加强大,指针是C语言中十分重要的部分...
    Hushman阅读 923评论 0 0
  • 这是16年5月份编辑的一份比较杂乱适合自己观看的学习记录文档,今天18年5月份再次想写文章,发现简书还为我保存起的...
    Jenaral阅读 7,881评论 2 9
  • 以下view的autoresizingMask默认就是18(UIViewAutoresizingFlexibleH...
    訷訷阅读 4,235评论 0 0