标签: memory-address

Python:为什么添加键值对后继承的字典属性的内存位置不会改变

所以我有一个名为 User_1 的父类,User_1 的 init 方法如下所示:

class User_1(object):
    def __init__(self, user_id, bio="", likes=0, uploads={}, follows=0, dateJoined=None, accountType=""):
        self.user_id = user_id
        self.bio = bio
        self.likes = likes
        self.uploads = uploads
        self.follows = follows
        self.dateJoined = dateJoined
        self.accountType = accountType
        self.comments = []
        self.responseCommentsCount = 0
Run Code Online (Sandbox Code Playgroud)

然后,我有一个继承自 User_1 类的类,称为 TrendingUsers,它的 init 方法如下所示:

class TrendingUser(User_1):
    def __init__(self, user_id):
        User_1.__init__(self, user_id)

        self.averageTSWords = 0.0
        self.averageSSWords = 0.0
        self.percOfClipTitlesUntitled = 0.0
        self.percOfClipsWithCaptions = 0.0
        self.percOfClipsWithTags = 0.0
        self.percOfClipsWithComments = 0.0
        self.percOfPurgatoryClips = 0.0
        self.averageTimeDifferenceBetweenUploaded = …
Run Code Online (Sandbox Code Playgroud)

python inheritance dictionary memory-address python-2.7

0
推荐指数
1
解决办法
144
查看次数

对内存如何分配感到困惑

我正在观看有关指针和内存的视频,我很困惑,因为我认为内存地址是 1 字节,但在视频中他说它们是 32 位(4 字节),如果我们有的话,int a = 2它将存储在一个内存中地址,但是整数不会存储在 4 个独立的内存地址中,因为它们的最大长度为 4 个字节?

c pointers memory-address

0
推荐指数
1
解决办法
67
查看次数

为指针*变量分配了多少内存?

我的问题:

  • int
  • float
  • char
  • str

这些 var 类型都有为其分配的标准化字节分配。但我从来没有了解过这一点的指针:

这些“地址”存储变量,其内容看起来只是一系列字母数字字符。

C++代码:

int *ptr1;
char *ptr2;
void *ptr3;
Run Code Online (Sandbox Code Playgroud)

那么上面列出的指针的标准内存分配是什么呢?一般来说呢?

c++ pointers allocation memory-address

0
推荐指数
1
解决办法
444
查看次数

地址空间、可寻址性、可字寻址、寻址模式之间有什么区别?

据我所知:

  • 地址空间:分配给程序或进程的可用内存量
  • 可寻址性:计算机识别不同内存位置的方式。
  • 字寻址:指大小等于“字”的内存单元,通常是一个字节,由单个二进制地址指向
  • 寻址方式:指指令操作数的指定方式

我不确定我是否正确,因为这些术语非常相似,有时我很难提及正确的事情。

assembly instruction-set cpu-architecture memory-address

0
推荐指数
1
解决办法
1573
查看次数

如何在 C++ 中将指针地址作为命令行参数

我有一个 C++ 代码,它将指针地址作为参数。代码参数是:

./主0x7fad529d5000

现在,在读取参数时,该值将作为字符串读取。

如何将字符串“0x7fad529d5000”转换为地址?

c++ pointers memory-address

0
推荐指数
1
解决办法
322
查看次数

C 中的无符号指针

我的一个朋友给我提出了这个问题,请我帮忙解决:运行这段代码后,指针 p 中记录的地址将是哪个?

unsigned * p = (unsigned*)1000;
p += 10;
Run Code Online (Sandbox Code Playgroud)

我刚刚继续使用 CodeBlocks 并添加到这个练习中printf("%u", p);,答案是 1040。

什么是(unsigned*)1000,什么意思?打印记住的地址的正确方法是printf("%u", p),还是需要使用另一种语法/另一种格式说明符?而且,为什么答案是 1040,而不是 1010?

主要问题,唯一给出的行是:

unsigned * p = (unsigned*)1000;
p += 10;
Run Code Online (Sandbox Code Playgroud)

基于这些,我做了一些谷歌研究,我认为获取地址的正确方法是将printf("%u", p);. 即使这是正确的并且这是正确的语法,我仍然无法理解此添加背后的过程。

c unsigned pointers memory-address

0
推荐指数
1
解决办法
160
查看次数

为什么fscanf在没有使用参数3+的地址的情况下工作正常?

我按照本教程(纯c ++)在Objective-c和C中创建.obj加载器.但是我注意到fscanf()即使你没有向它发送它要设置的变量的内存地址(仅发送值),该函数也能正常运行.对此有解释吗?

 Vec2 *uv;
 fscanf(file, "%f %f\n", uv.x, uv.y);
 [tempUVs addObject:uv];
Run Code Online (Sandbox Code Playgroud)

请注意,参数uv.x和uv.y没有符号.

c objective-c memory-address

-1
推荐指数
1
解决办法
125
查看次数

为什么"cout << cout"会输出一个地址?

我的第一个理解是cout指向终端的输出,但我不知道这是否正确.

也许它是一些内存地址,它不是终端的输出,而是连接到它.

我很困惑,任何澄清都会非常感激.

编辑:

当我这样做std::cout << std::cout;输出是0x467f84,它是一个地址,对吧?

c++ cout memory-address

-1
推荐指数
1
解决办法
102
查看次数

为什么*str1和*(&str1),其中str是C中char数组的名称,不会评估相同的结果?

代码很简单但我不明白它是如何工作的.所有三个变量似乎都存储在同一个地址,也许str1只是str [0]的别名,但是当我尝试取消引用它们时,我会得到不同的结果.

   #include <stdio.h>

    int main() {
        char str1[] = "Hello";

        printf("<========Addresses: =======> \n");
        printf("%d\n", &str1[0]);
        printf("%d\n", &str1);
        printf("%d\n", str1);

        printf("<========Values stored at the address(?!)=======> \n");
        printf("%d\n", *(&str1[0]));
        printf("%d\n", *(&str1));
        printf("%d\n", *str1);
        return 0;
    }
Run Code Online (Sandbox Code Playgroud)

这就是它打印的内容.

<========地址:=======>

6356458

6356458

6356458

<========值>存储在地址=======>

72

6356458

72

c arrays pointers memory-address

-1
推荐指数
1
解决办法
71
查看次数

我可以从静态 JNI 字段获取数据的内存地址吗?

我可以从静态 JNI 字段获取数据的内存地址吗?

比如我有2种情况:

第一的:

jclass clazz = ...;
jfieldID staticFiled = ...; // static field on java object
uintptr_t *staticFiledPtr = ((uint64_t) staticFiled); // get field ptr

jboolean *boolPtr = *magic code with static field*;
*boolPtr = true;
Run Code Online (Sandbox Code Playgroud)

第二:

jclass clazz = ...;
jfieldID staticFiled = ...; // static field on java object
uintptr_t *staticFiledPtr = ((uint64_t) staticFiled); // get field ptr

jobject *objectPtr = *magic code with static field*;
jobject object = *objectPtr;
Run Code Online (Sandbox Code Playgroud)

这些例子非常简单。我只想获取静态字段数据的内存地址,而不使用 GetStaticObjectField 等。这可能吗?

c++ java java-native-interface field memory-address

-1
推荐指数
1
解决办法
216
查看次数