我试图了解当在 main function 中声明时,一个变量在 C 中准确获得 memory 的时间。我发现了一个类似的问题When does memory gets allocated for a variable in c? 这里。 它提到分配memory时没有硬性规定。 但我正在尝试具体了 ...
我试图了解当在 main function 中声明时,一个变量在 C 中准确获得 memory 的时间。我发现了一个类似的问题When does memory gets allocated for a variable in c? 这里。 它提到分配memory时没有硬性规定。 但我正在尝试具体了 ...
我正在尝试获取派生 class 的大小,但我不能... output 总是 8! ...
sizeof() 如何计算出 array1 是 3 个字节而不是 4 个字节,因为我给分配给数组的 memory 的第 4 个字节分配了一个值? array2[-1] = 3 //3存储在这个位置,因此4字节字中的所有字节都在其中有一个值。 那么 //sizeof(array1) 如何返回值 3 ...
谁能帮我解决这个问题,为什么它打印浮点数,为什么它为 sizeof(x==2) 提供 4,谁能帮我看流程图? ''' sizeof((x == 2)? f: i) == sizeof(float) ''' 这段代码如何在 if 部分给出 true 或 1? ...
遇到麻烦 C 语言调试步骤进入浮点数字字符串中的过程小数点运算符。 示例:1234.5678,itoa() output 在 4 处停止并以 '\0' 终止数组字符串 Null char* 指针也是一个数组。 因此,即使在为 '.' 添加测试之后,我们也只会在 out 数组中得到 1234\0 似 ...
编辑:我是新来的。 如果我的问题没有正确提出,我将不胜感激您的反对意见。 谢谢你。 我有这个练习: .... 给定一个 char 指针,该函数应返回指针指向的字符串的长度。 约束: 不要使用 Array 下标运算符('[ ]'),使用 Dreference 运算符('*')。 不要使用数字计数器, ...
由于 c++ 数据类型的大小和限制可能因体系结构而异,我想确保它们的保真度。 我在下面分享的第二个代码块,我如何检查它们,但感觉不对。 我觉得它不会在每个系统上工作(即使在我的电脑上工作)。 有没有更好的方法来检查 C++ 数据类型的字节大小及其最小和最大限制这些是我在整个项目中使用的数据类型(使用 ...
代码 Output: 我在期待分配给 x 的 4 个字节由于 long int 是位域化的,因此分配给它的是 33 位 -> 4 + 4 字节,但只使用了 33 位然后将 4 个字节分配给 z,并且不会占用前 8 个字节中的剩余空间,因为没有剩下 4 个完整的字节。 总共 16 个字节, ...
我从 Boris Allen 的书 C programming: principles & practice on pg18 using Dev-C++ 5.11 中输入了这个程序,它应该产生以下 output 文本: 我不知道如何解决这个错误。 (编译器还在“main”中提到了带有 fu ...
嗨,我刚开始学习 cpp,我有两个在 for 语句中获取向量大小的示例,这两个示例似乎都有效,但哪个是正确的,为什么? sizeof(vector) 还是 vector.size()? 谢谢布莱恩 两者似乎都有效我尝试在一周内每天重写 memory 中的相同代码以帮助我学习它,但我无法完全让 si ...
output中,只有水印,没有苏打水印。 但在我看来,苏打水的尺寸较小,应该很容易保存在 x 中,因为 x 的尺寸更大。 如果我设置 y 的字符数比 x 多,那么它就没有这样的问题。 ...
代码:#include <iostream> #include <type_traits> int main() { std::cout << "sizeof(size_t): " << sizeof(size_t) << std: ...
我听说当使用数组作为 function 参数时,编译器将其视为实际上不是数组,而是作为指向数组第一个元素的指针。 因此,当询问 A(int array) 的大小时,它应该返回指针 4 的大小(以字节为单位)。 但我得到8。有什么问题? 我正在使用代码块。 ...
我最近看到的一个代码示例: sizeof(*ptr)甚至如何工作? 如何取消引用未定义的指针并将其提供给sizeof()并产生正确的大小? (当然它应该导致未定义的行为,因为它未定义) 最后,C 标准是否定义了这种行为? (也许表明它在 C 中是合法的,我找不到任何东西) ...
对于下面的代码。 output 是 'a' 代表整个数组(也是数组的第一个元素的地址,因为它是一维数组),sizeof(a) 代表整个数组的大小。 因此大小是 16。明白了。 '&a' 代表整个数组的地址,而sizeof(&a) 代表什么? 我猜它的 output 是 8 因 ...
我不确定这里发生了什么。 第 1 行(在上面的片段中)是否意味着 n 现在只是一个指向 int 的指针? 我们已经开始使用为指针分配的 memory 作为变量本身? 指向指针的指针是否转换为指向 int 的指针? ...
我的分配部分有效。 但是我不明白sizeof()的使用。 还有*num ,我认为正确的用法是(unsigned short*)num 如果我不使用它,我会收到一些错误,但为什么应该使用它。 ...
据我所知, sizeof 只能知道某物的大小,如果大小是在运行时确定的。 如果我输入 10,sizeof 表示数组的大小是: 40/4=10 sizeof 怎么知道这个? ...
Output: 为什么char指针只增加一个字节? 它的大小是8,对吧? 声明ptr时,编译器为其分配 8 个字节。 当我们将其递增1时,它会根据数据类型递增。 为什么? 这是如何工作的? ...
我在 C 中遇到了sizeof运算符的一个简单(可能过于简化)实现,如下所示: #include <stdio.h> #define mySizeof(type) ((char*)(&type + 1) - (char*)(&type)) int main() { ...