pointers相关内容

字符串指针和字符串数组的区别

我正在编写代码来巩固我的知识,但我遇到了分段错误.所以,我也知道我必须补充(完成不完美的知识)我的知识.问题在于 strtok().当我运行第一个代码时没有问题,但在第二个中,我得到了分段错误.我的“不完善的知识"是什么?感谢您的赞赏回答. 第一个代码 #include #include int main() {char str[] = "team_n ..
发布时间:2022-01-12 16:32:47 其他开发

保存结构指针的 STL 列表

我有一个名为 vertex 的结构,并创建了一些指向它们的指针.我想要做的是将这些指针添加到列表中.我下面的代码在尝试将指针插入列表时会产生分段错误.有人可以解释发生了什么吗? #include #include #define NUM_VERTICES 8使用命名空间标准;枚举{白色,灰色,黑色};结构顶点{诠释颜色;整数距离;字符父;};主函数(){//创建顶点顶 ..
发布时间:2022-01-12 16:20:55 C/C++开发

C中的结构和指针分段错误

任何人都可以帮助我解决这个分段错误.这段代码很简单,但错误很难弄清楚. 结构链接{整数键;无符号数据:2;结构链接*下一个;结构链接 *previous;};struct Link* addInOrder(struct Link *, struct Link);int main() {结构链接*头;结构链接数据1;结构链接数据2;结构链接数据3;数据1.key = 25;数据1.数据=1;dat ..
发布时间:2022-01-12 16:08:49 其他开发

如何识别导致分段错误的原因

我的代码的目标是接收 2 个命令行参数(包括程序名称),并根据给定的第二个命令行参数打印出如图所示的响应.如果命令行参数是一个整数,则用户的输入被接受或“成功",如果它是其他任何东西(例如,一个字符串或多个命令行参数),它将为 Null 并且将显示错误消息.这是为熟悉的人准备的CS50凯撒 我的代码如下: #include #include #includ ..

C 指针指针和段错误

下面是我在 C 中的简单链表.我的问题在“headRef = &newNode;"中这会导致分段错误.然后我尝试了“*headRef = newNode;"这解决了段错误问题.尽管在我看来这两行代码以相同的方式工作,但为什么一个会导致 seg fault 而另一行不会呢?提前致谢. 结构节点{整数数据;结构节点*下一个;};无效推送(结构节点** headRef,int数据){结构节点* new ..
发布时间:2022-01-12 16:07:09 其他开发

预期时未收到段错误

我正在学习如何在 C 中使用指针和结构.当然,我试图故意破坏我的代码以进一步了解该语言的工作原理.下面是一些测试代码,可以按我的预期工作: #include #include 结构对{诠释 x;整数y;};typedef 结构对对;无效 p_struct( 对 );//原型int main(int argc,char** argv){对 *s_pair;整数 ..
发布时间:2022-01-12 16:06:26 其他开发

当我删除指针时出现分段错误(核心转储)

我正在尝试从链表中删除重复项,但遇到了一个问题,这可能很明显而且很简单,但我已经很多年没有使用过 C++ 了,我找不到什么通过阅读关于 SO 的类似问题,我做错了. 以下是我的部分代码.我删除了不相关的部分(例如构造函数、其他方法等). 模板类节点{节点():数据(NULL),下一个(NULL),上一个(NULL){}显式节点(T d):数据(d),下一个(NULL),上一个(NULL){ ..

C++ 中指针的分段错误

我正在尝试构建结构的对象,但在分配值时遇到分段错误.在我构建对象后,它将通过指针传递到列表中.这是我的实现: struct clientInfo {int 客户端,a,b;};列表 *info=new List();无效线程(int which){客户信息 *cI;cI->client=which;cI->a=4;cI->b=5;信息->附加(CI);} 在执行 'cI->client=whi ..
发布时间:2022-01-12 16:04:53 C/C++开发

将 malloc 与 char 指针一起使用时出现分段错误

我是 C 和学习结构的新手.我正在尝试 malloc 一个大小为 30 的 char 指针,但它给出了分段错误(核心转储).我在互联网上搜索了它&所以但我无法解决这个问题.任何帮助将不胜感激. 可能我错误地访问了结构的 char* 成员? typedef 结构{诠释 x;整数y;字符 *f;字符 *l;}str;无效 create_mall();void create_mall()//Mall ..
发布时间:2022-01-12 16:02:50 其他开发

试图在函数内动态分配父指针给子指针会导致分段错误

我一直在努力理解多态性和指针,但这个概念让我有些不知所措.幸运的是,我有 stackoverflow 和 google,所以我的大部分问题都可以轻松解决.但是,我已经尝试修复这个分段错误几个小时了,但没有运气,我不确定发生了什么问题.我已经剥离了所有内容以尝试了解出了什么问题,但我相信我缺少动态分配的核心概念. 我将一个字符指针传递给我的函数初始化,我不能在函数内动态分配它吗?我的代码可以编 ..
发布时间:2022-01-12 16:00:23 C/C++开发

为什么会出现分段错误?

我正在尝试编写一个程序,该程序将纯文本文件作为参数并对其进行解析,将所有数字相加,然后打印出总和.以下是我的代码: #include #include #include 静态 int sumNumbers(char 文件名[]){整数总和 = 0;文件 *file = fopen(filename, "r");字符 *str;while ( ..
发布时间:2022-01-12 15:48:24 其他开发

在 for 循环中创建的对象具有相同的地址

我正在尝试创建一个自己的列表类,它具有固定大小并且可以存储整数.仅用于学习目的. 这就是我的做法:我有一个名为 Item 的结构,它保存数据(要存储的整数)和指向列表中下一项的指针.当列表初始化时,我首先将 x 数量的空项添加到列表中. 迭代(n-1)中声明的item的地址存储在缓冲区中,因此迭代n中的item的地址可以设置为上一次迭代(n-1)中的item的下一个.这将所有项目相互链 ..
发布时间:2022-01-12 15:41:41 C/C++开发

尝试在 C 中打印值时出现分段错误

以下 C 代码返回“分段错误"错误.我不明白为什么它不返回值 20.我的错误是什么? #include 主函数(){诠释* n;*n = 20;printf("%i\n",*n);返回0;} 解决方案 你还没有给n分配内存,所以 *n = 20; 尝试写入未指定的内存. 试试 #include int *n = malloc(sizeof * ..
发布时间:2022-01-12 15:39:05 其他开发

取消引用 cout 指针时的 C++ SegFault

我是 C++ 新手,只是想掌握它.通常看起来还不错,但我偶然发现了这种奇怪/病态的段错误行为: int main () {诠释* b;*b = 27;诠释 c = *b;cout 这个程序,如给定的,产生你所期望的: c 指向 27b 指向 27 另一方面,如果您取消对倒数第二行的注释,您会得到一个在运行时崩溃(seg-fault)的程序.为什么?这是一个有效的指针. 解决方案 ..
发布时间:2022-01-12 15:38:42 C/C++开发