鱼C论坛

 找回密码
 立即注册
查看: 1291|回复: 5

[已解决]萌新提问作业题,help!

[复制链接]
发表于 2022-1-8 17:46:52 | 显示全部楼层
本帖最后由 傻眼貓咪 于 2022-1-8 17:53 编辑
xuebowen 发表于 2022-1-8 16:58
额,还是有点不太懂,是因为第二行把myteacher中的小甲鱼赋给了yourtheacher,那么这个youteacher就直接 ...


因为 Python 万物皆对象,所以好象没有像 C 语言一样的指针概念。
  1. a = b = 13          # a 和 b 指向同样地址
  2. print(id(a), id(b)) # 打印地址

  3. a += 5              # 增幅 a 值

  4. print(a, b)         # 打印 a 值和 b 值
  5. print(id(a), id(b)) # 发现 a 和 b 已经不同地址了,a 地址随着值而改变了,b地址不变
复制代码
如上,即使 a 已经赋值整数,之后还能变成字符串,布尔值,浮点数都可以(地址也一直改变),不像 C 语言,内存地址不变,而是值改变。
C 语言:
  1. #include <stdio.h>

  2. int main()
  3. {
  4.     int *a, b;
  5.     a = &b;
  6.     b = 13;
  7.     printf("%p %p\n", a, &b);
  8.    
  9.     *a += 5;
  10.     printf("%d %d\n", *a, b);

  11.     printf("%p %p\n", a, &b);
  12.    
  13.     return 0;
  14. }
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-10-4 03:47

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表