什么是 C 语言中的指针 为什么要使用指针 如何使用指针

发布于 科技 2024-05-04
26个回答
  1. 匿名用户2024-01-28

    在 C++ 中,指针是变量的地址。

    由于在函数传递参数C++---实际上只有一种形式,因此将变量的地址传递给函数将使函数易于修改参数的值。

    当然,这只是指针的一种非常常见的用法。

    此外,指针在构造数据结构、函数指针方面很有用。

    指针有两个最基本的操作。

    1.分配。 例如,通常,它必须是相同类型的对等方之间的指针分配。

    int intvar;

    int * pint = &intvar;

    2.取消引用。

    例如,运算符为 *。

    pint = 10;品脱引用是 intvar

  2. 匿名用户2024-01-27

    坦率地说,指针和变量是一回事。 指针是存储的内存地址。

    假设您输出一个指针。

    int *i = new int();

    std::cout “结果是一行十六进制中的正整数。

    而这个正整数 i 的内容。 而这个内容对应于一个内存地址。

    为什么要使用指针?

    事实上,这是为了避免大规模的数据复制。

  3. 匿名用户2024-01-26

    指针可以使程序的设计更加灵活,很多动态数据都是依靠指针来保存地址的,比如链表是通过指针连接的,如果没有指针,当数据量很大且程序开发量不确定时,很难使用变量提前声明大量的变量, 通过指针就可以做到了。函数也可以由指针调用,并且指针比复制大型数据结构更容易传递......

  4. 匿名用户2024-01-25

    所有变量值都存储在内存中,每个内存都有一个地址,这是一个整数,就像门牌号用于定位(在技术术语中称为寻址)一样,地址对应于一个字节(8 位)内存单元。

    在今天的编译器中,整数 int 的值占用 32 位或 4 个字节,编译器将第一个字节的编号定义为整数的地址,这被称为指针变量,因为保存地址的变量就像一个指向地址的箭头。

    int a =10;定义一个整数变量 a 并为其赋值 10

    int *p =&a;定义一个指针变量 p,值 a 的内存地址和 & 符号表示引用它后面的变量的地址。

    cont “寻址>值。

    由于指针是变量第一个字节的地址,因此它告诉编译器引用的地址包含多少个连续字节,因此指针也具有类型。 例如,在上面的示例中,p 指针被声明为整数指针,以便编译器知道 p 指向 4 字节的内存块。

    您可以将指针变量视为一般整数变量,用于保存整数(地址是整数),但整数表示地址,在本例中为 a 的地址。

    它在 C C++ 中很灵活,但它也很危险且难以学习,如果指针指向错误的地址,会导致程序崩溃,所以它已经被 Microsoft 封装在 C 中,但里面仍然有指针。

    如有必要,指针也可以在 C 中使用,使用 non-safe,在项目构建选项卡中勾选“允许非安全”,然后就可以使用指针了,但不建议这样做。

    unsafe

  5. 匿名用户2024-01-24

    指针的作用是标识一段内存。 计算机内存中的每个字节都有一个数字,称为地址(可以简单地理解为指针),任何读取或写入内存的指令都必须携带地址信息,否则计算机将不知道如何读写那段内存。 无论您的程序是用哪种语言编写的,为了运行数据并且必须驻留在内存中,CPU 必须有一个指向内存块的“指针”(程序计数器)来执行指令,如果指令要操作内存数据,则该指令必须携带额外的地址信息。

    C 指针赋予程序员直接操作和管理内存的能力,这也是 C 适合编写低级软件的原因之一。 目前可用的操作系统是用 C(有时是 C++)和汇编语言编写的。 在底层软件领域,C语言占主导地位。

    C 通过指针操纵内存,虽然 C 可以通过变量名访问内存,但变量名在编译后会转换为地址。

    其他语言没有指针或地址概念,但它们需要一个地址来访问内存,因此与地址相关的底层操作由语言的运行时库负责,而地址对于程序员来说“不存在”。

  6. 匿名用户2024-01-23

    C 也有指针,但它是面向对象的,并且有很多封装,其中指针 (*) 成为引用 (refs),(a->b) 变成 (. 指针是地址,将记忆单元绘制成立方体(在纸上可以看到 3 个面),并标记以下值:变量名称、地址和值。

    这要生动得多。

  7. 匿名用户2024-01-22

    可以理解为按逻辑顺序排列的门牌号吗?

  8. 匿名用户2024-01-21

    C 可以做到这一切。 但是C能做的,C可能做不到。

    指针指向内存地址,这意味着C语言可以直接操作计算机的硬件,只要有地址,这也是为什么C语言适合底层开发的原因。

  9. 匿名用户2024-01-20

    注意指针和指针变量这两个概念...

  10. 匿名用户2024-01-19

    指针是一段 32 位数据,表示可以保存任何内容的内存地址。 也就是说,指针可以操作任何内容,因此指针灵活而强大,但它们也引入了复杂性。 只要你了解了指针的原理,不管它有多复杂,你都可以一点一点地分析它。

    C 与指针有相似之处,可以直接使用 unsafe 块中的指针进行操作。

  11. 匿名用户2024-01-18

    如果没有指针,它就会过时。

  12. 匿名用户2024-01-17

    指针不用于获取地址?

  13. 匿名用户2024-01-16

    指针实际上是一个内存地址,例如,函数指针是一个函数的入口地址,系统可以通过它找到函数的位置并调用它。

  14. 匿名用户2024-01-15

    指针是C++中一个非常重要的概念,指针的传递可以大大提高效率。

  15. 匿名用户2024-01-14

    指针是 C 语言中广泛使用的数据类型。 指针编程是 C 语言最主要的风格之一。

    指针变量可用于表示各种数据结构; 易于使用的数组和字符串; 它还可以像汇编语言一样处理内存地址,从而对程序进行简洁高效的编程。 指针极大地丰富了 C 语言的功能。

    学习指针是学习C语言最重要的部分,我们能否正确理解和使用指针,是检验我们是否掌握了C语言的标志。

    同时,指针也是C语言中最难的部分,除了正确理解基本概念外,还必须多编程,在电脑上调试。 只要你这样做,指针就不难掌握。

  16. 匿名用户2024-01-13

    指针足够强大,可以指向存储数据的地址,指针可以指向变量地址或函数。 因此,无论是调用数据还是调用函数,您都已经可以使用指针。 间接访问指针,确保原始数据不会丢失。

  17. 匿名用户2024-01-12

    我认为,无论有人问什么问题,多么简陋,多么简单,都可以详细回答,或者告诉他如何寻求帮助,在哪里可以找到,不要愤世嫉俗,每个人都是这样来到这里的。

  18. 匿名用户2024-01-11

    为了帮助你解决内存问题,指针在C中非常重要,虽然在C++中有&,但指针仍然非常重要。

  19. 匿名用户2024-01-10

    C++的指针与C的指针完全相同,简而言之,它是一种内存操作。

    要点如下:

    1.效率更高,无需通过变量名直接操作内存(值赋值等),效率要高得多。

    2.可以写更复杂的数据结构,通俗易懂,程序员可以操作内存,当然也可以写灵活复杂的数据结构。

    3、编写简明扼要、紧凑高效的程序。

  20. 匿名用户2024-01-09

    我们都知道,C语言中的数组指的是一类类型,数组具体分为int数组、double类型数组、char数组等。 同样,指针的概念也指一般类别。

    数据类型、int 指针类型、双精度指针类型、char 指针类型等。

    通常我们使用 int 类型来存储一些整数数据,比如 int num = 97,我们也使用 char 来存储字符:char ch ='a'。

  21. 匿名用户2024-01-08

    存储地址的变量称为指针。

  22. 匿名用户2024-01-07

    指针其实是一个变量(只要是变量,就一定有对应的内存空间),但这个变量比较特殊。

    它只能存储其他变量的地址,变量在内存中有地址。

    变量值:是变量本身的内容。

    一般来说,这个变量 fp 只能接受一个指针变量的地址,所以你可以看到第 8 行在 p 前面加一个 '&' 来取地址符号,即变量 p 的地址给 fp,fp 的内容就是 p 的地址。

    1.接下来的 9 行输出 a 的值,可以通过变量名 a 直接找到,直接输出 a 1 的值

    2.在第 10 行中,您会发现输出列表参数中的 *p 是什么意思? 这里的“*”代表指针运算符,就是用p的内容作为地址来求地址中的值,p不是村子的a变量的地址,不是吗?

    如果您看到第 7 行,则在 a 变量前面添加“&”以采用地址运算符,因此 *p 为 1

    3.第 11 行**fp 这里有 2 个 '*' 符号 别担心,因为指针运算符的绑定方向是“从右到左”,所以先计算 *fp,那么 *fp 是什么就是一个 fp 的内容,找到的地址的变量值是多少,fp 存储了 p 的地址,显然在这个时候, *fp 最终成为变量 p 的地址。

    4.*(p变量的地址)此时,找到以p的内容为地址的对应变量,显然是变量a。

    数字 11 就是你所说的指针。

  23. 匿名用户2024-01-06

    辅助指针是指向指针的指针。

    例如,char *p1 ="123456";

    char **p2 = &p1;

    printf("%s", *p2);

  24. 匿名用户2024-01-05

    通俗地说,就是你的门牌号,简单地说,指针就是指向变量和对象的地址。

    指针可以用于多种用途,例如,如果要通过函数更改变量的值,则必须使用指针而不是值传递。 另外,在很多情况下,变量,尤其是对象的数据量太大,程序员会使用指针来制作表单参数,只需要传递一个地址,大大提高了效率。

  25. 匿名用户2024-01-04

    在C语言中,指针变量代表一个地址,它可以是一个变量,也可以是一个扩充、一个数组等,这样我们就可以通过指针变量访问存储在变量地址中的内容,或者调用函数等,非常灵活,具体的好处可以在编程中慢慢实现, 所以学习它。

  26. 匿名用户2024-01-03

    当你在计算机中定义一个数量时,你会在内存中申请一个地址来存储这个值,而指针是存储地址值的变量。

相关回答
28个回答2024-05-04

就在楼上已经说过要用1了; 1 变压器是防止触电的,为什么? 首先知道什么叫电压,电压也叫电位差,即两点之间的电位差[电压]。 我们用的电压是220V,中性线直接接地,如果碰到相线[火线]。 >>>More

18个回答2024-05-04

使用 LED 植物生长照明, 可以集中特定波长的光以平衡的方式照亮作物.

2个回答2024-05-04

NGINX 是一个高性能的 Web 和反向服务器,具有许多非常优越的功能: >>>More

3个回答2024-05-04

您也可以强制关闭它,但这样所有未保存的内容都将消失!

6个回答2024-05-04

你有没有注意到,美国时间之前是上午或下午的上午或下午,而美国没有 12 小时,每个大陆都不同,通常是 24 小时,例如晚上 10 点。它也被写成晚上 22:00。你看到的只是偶尔的不规则。