初学者C ++指针

时间:2016-03-17 10:10:35

标签: c++ class pointers object

我正在阅读代码片段,我看到了这个

FILE * infile = fopen("input.wav","rb");

我想在这里问两个问题。

  1. 这里的FILE是什么。它是一个类,对象还是其他任何东西。

  2. infile指向的是什么。我已经看到了指向int, char等的指针。但是指向的是什么。

7 个答案:

答案 0 :(得分:1)

  

这里有什么文件。它是一个阶级,对象还是其他什么?

  • FILE是一个标识流的对象,包含控制它所需的信息,即位置指示器,指向缓冲区的指针和所有状态指示符。

  • fopen 返回指向FILE对象的指针。

  • 自动管理FILE对象的内存分配,即当使用 fclose (或程序终止时)关闭流时,库负责释放资源正常)。

  • 如果包含< cstdio>头文件,这三个FILE对象是自动创建的:

    1. 标准输入:标准输入流
    2. 标准输出:标准输出流
    3. stderr:标准错误流
  

什么是infile指向。我已经看到了指向int,char等的指针。但这是指向什么?

它指向那个FILE对象。

如果你想从那个文件指针中读取这样的东西:

IntPtr

答案 1 :(得分:0)

  1. FILEinfile指向的对象的类型。
  2. infile指向FILE类型的对象(由fopen()重新调整)

答案 2 :(得分:0)

  1. FILE是来自C的类型,它是用于控制和输出文件的struct。它包含有关所处理文件的信息,某些专门处理文件的C函数使用它作为返回类型或参数来了解它们正在处理的内容。

  2. infile指向fopen类型FILE创建的对象,其中包含有关您刚刚打开的文件input.wav的信息。

    < / LI>

答案 3 :(得分:0)

FILE是包含控制流的信息的对象,当你想在c ++中使用文件(fopen,fclose)时使用它。 &#34; infile&#34;指针,指向内存地址&#34; input.wav&#34;将由fopen安置。

答案 4 :(得分:0)

FILE

包含有关stdio.h

中文件的信息的结构
infile

fopen返回的对象的分数及其类型为FILE

答案 5 :(得分:0)

FILE 是一种标识流的对象类型,包含控制它所需的信息,包括指向其缓冲区的指针,其位置指示符及其所有状态指示符。

参考:http://www.cplusplus.com/reference/cstdio/FILE/

的infile 指向此对象的起始地址,在内存中

答案 6 :(得分:0)

正如其他人指出的那样

1。 FILE是一个结构。简而言之,struct是一种数据类型

2. infile是FILE类型的指针,指向一个音频文件,该文件现在将在1和0之内,具体取决于您用于提取的变量的类型流中的数据将根据该数据类型进行,例如,如果使用int,它将移动4个字节,如果使用char,它将移动1个字节。

ps我不建议使用.wav来理解概念制作一个简单的txt并尝试提取字符串int和东西