pointers 相关问题

“指向”存储在内存中的另一个值的数据类型。指针变量包含某个其他实体(变量或函数或其他实体)的内存地址。此标记应用于涉及指针使用的问题,而不是引用。使用指针的最常见编程语言是C,C ++,Go和汇编语言。使用特定语言标记。其他有用的标签是描述指针使用的方法,函数,结构等。

在C中,如何知道传递的参数是列表还是指针?

所以我在 Codewars 上工作并且得到了 void func(const struct struct_name *name) 跟...共事。所以我想知道,在其他一般情况下,我怎么知道它是否只是指向特定

回答 1 投票 0

获取用户输入并将其存储到结构中的元素中

我目前正在编写一个简单的代码,该代码重复读取用户输入并将输入存储到结构中,然后将其打印出来。我在读取“accountNum”时遇到问题...

回答 1 投票 0

指向多种类型的指针数组,C

使用malloc可以拥有多种类型的数组吗? 编辑: 目前我有: #包括 #包括 #包括 #define int(x) *((int *) x...

回答 7 投票 0

constexpr 用指针初始化

我正在尝试使用指向 int 的指针初始化 constexpr 声明,该指针是 const 对象。我还尝试使用非 const 类型的对象来定义对象。 代码: #包括 我正在尝试使用指向 int 的指针初始化 constexpr 声明,该指针是 const 对象。我还尝试使用非 const 类型的对象来定义对象。 代码: #include <iostream> int main() { constexpr int *np = nullptr; // np is a constant to int that points to null; int j = 0; constexpr int i = 42; // type of i is const int constexpr const int *p = &i; // p is a constant pointer to the const int i; constexpr int *p1 = &j; // p1 is a constant pointer to the int j; } g++ 日志: constexpr.cc:8:27: error: ‘& i’ is not a constant expression constexpr.cc:9:22: error: ‘& j’ is not a constant expression 我相信这是因为 main 中的对象没有固定地址,因此 g++ 向我抛出错误消息;我该如何纠正这个问题?不使用文字类型。 让他们static修复他们的地址: int main() { constexpr int *np = nullptr; // np is a constant to int that points to null; static int j = 0; static constexpr int i = 42; // type of i is const int constexpr const int *p = &i; // p is a constant pointer to the const int i; constexpr int *p1 = &j; // p1 is a constant pointer to the int j; } 这称为 地址常量表达式 [5.19p3]: 地址常量表达式是纯右值核心常量表达式 指针类型,计算结果为具有 static 的对象的地址 存储持续时间、函数地址或空指针 值,或 std::nullptr_t 类型的纯右值核心常量表达式。 #include <iostream> // define i/j outside the function body, as mentioned in the book "c++ primer" int j = 0; constexpr int i = 42; // type of i is const int int main() { constexpr int *np = nullptr; // np is a constant to int that points to null; constexpr const int *p = &i; // p is a constant pointer to the const int i; constexpr int *p1 = &j; // p1 is a constant pointer to the int j; }

回答 2 投票 0

收到不兼容的指针类型警告,因为函数的返回不是 void* 而是结构指针

这个警告似乎没有必要。 在我的代码中,我有一个函数指针类型 (void*)(*函数指针)(void*数据) 并且有些函数需要这种类型的函数指针作为参数,b...

回答 1 投票 0

如何使用(双)指针来更新其他指针的值

我正在尝试将一组单独排序的链表合并到一个排序的链表中(顺便说一句,这是leetcode问题23)。链表定义为: 结构列表节点{ int val;...

回答 1 投票 0

C 中神秘的(我认为)缓冲区溢出

抱歉,如果这是重复的帖子。 我目前遇到的一个问题是,我在这段代码上收到警告,提示“写入‘titleTextPointer’时缓冲区溢出”,但我相当确定

回答 1 投票 0

为什么需要使用(&*ptr)这种格式?

我正在阅读有关如何编写 destroy() 的示例代码: 模板 内联 void destory(T* 指针) { 指针->~T(); } 模板 内联空

回答 1 投票 0

Valgrind 错误 - 条件跳转或移动取决于未初始化的值

无法弄清楚这段代码有什么问题以及为什么我会收到此错误。 c:106 是我标记的行。我认为问题在于前一个空检查中的 n 值...

回答 3 投票 0

将指针或引用传递给对象的构造函数

对 C++ 相当陌生,并且在引用与指针方面存在问题。下面的代码是一个简单电机的类并工作。我想在构造函数中传递引脚扩展器,但似乎无法...

回答 1 投票 0

如何实现成员方法指针的比较/较少运算符?

从我的阅读中,我了解到可以使用任一运算符来比较 C++ 中的某些指针类型< or std::less. This is useful if, for example, a pointer is used as a key for a std:...

回答 1 投票 0

golang 指针切片中的奇怪分配

我有一个简单的基准来比较创建结构体切片和指向该结构体的指针切片的性能 包指针 进口 ( “测试” ) 类型smallStruct结构{ ...

回答 1 投票 0

C 中初始成员、公共初始序列、匿名联合和严格别名如何相互作用?

因此,在严格的别名规则下,有几件事是明确允许的(为了清楚起见,让我们在 C23 中这样做): 第一个也是最明显的是结构体允许使用指针别名...

回答 1 投票 0

在没有指针指向的情况下,*(&i) 取消引用如何在 c 中工作?

#包括 无效主() { 整数a=10; printf("%d “,A); printf("%d “,*(&A)); } 由于变量“a”是整数类型,而不是指向的变量指针...

回答 3 投票 0

不输入我的人名功能。我放置函数和所有内容的方式在逻辑上是正确的吗?

我不知道为什么它不运行我的用户名功能。是我的编译器的错误还是我的编码的错误。如果我想放置指针,我应该把它放在哪里。并且,是否可以从 mai 传递指针 var...

回答 1 投票 0

C 中数字的指针

假设有一个函数获取 int * 参数。 无效 foo(int *x) { } 如果我想在不创建 int 变量 foo(&1) 的情况下调用此函数,编译会失败并收到以下错误消息:

回答 1 投票 0

多个指针分配会导致溢出吗?

我正在尝试了解 C 的内存管理。到目前为止,我已经有了一个清晰的概述,但有一个问题对我来说并不是那么明显。 如果我声明一个 char 指针并为其分配一些字符串,那么...

回答 1 投票 0

无法解决C程序中的分段错误

我的任务是编写一个 C 函数 void censor(char *start) ,它将用 **** 替换 start 指向的字符串中的所有 4 个字母单词。假设单词由空白字符分隔。这

回答 1 投票 0

C++ 引用作为函数中的参数需要取消引用指针?

我不太理解引用作为形式参数(这可能源于我对指针和引用的理解不佳)。但在下面的代码中: void func(int &k...

回答 1 投票 0

如何使用 new 创建类指针数组?

我有点困惑。 我有这个代码: 鱼类{ 民众: 无效游泳() { std::cout << "I'm Swiming" << std::endl; } }; Now, in another...

回答 2 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.