c相关内容

为什么我不能在链表中得到给定数字的返回素因数?我添加了结构、函数、Main和Print函数

我正在尝试找到给定数字N的素因数并将它们返回到链接表中。查找素因数没有问题,但在链表中返回它们却有问题...运行代码时没有收到错误,但我只得到第一个素因数作为输出,不能得到其余的,例如,如果N等于72,我得到2作为输出,但不能得到其余的因数 #include #include //This is my structure ..
发布时间:2022-09-24 19:53:04 其他开发

C根据用户选择旋转链接列表

我写了一个程序,它从用户编号到链表和编号,以确定每个节点向左旋转多少。我只是成功地做到了这一点,但不是在一个圈子里。并且我的程序需要能够将节点向左移动,而不是圆圈中列表的长度。 有人知道我怎样才能修复我的程序吗?(需要修复的函数是";RotateALinkedList";函数)。我的意思是,如果用户想要将列表向左移动4次,第一个节点将从最后一个节点开始。 #include ..

如何在c中删除链表中的头?

此程序应删除单链表中的N节点。如果我把N=1或N=2,这是可以的,程序可以工作。但当N=0时,输出将打印具有随机值的无限个节点(在删除节点0之后)。我认为程序看不到新的负责人。感谢帮助! #include #include #define N 0 struct node { int data; struct node *next; ..
发布时间:2022-09-24 19:12:33 其他开发

对链表进行排序的最简单方法

我正在尝试编写非常基本的链表排序方法。我遇到了未处理的异常情况。我犯的错误是什么?以下是我的代码:- struct LinkedNode// structure for linked list { int data; struct LinkedNode *next; }*start = NULL; 以下 ..
发布时间:2022-09-24 18:39:32 其他开发

使用外壳代码调用x86本地函数

我想使用将流重定向到本地函数,然后使用外壳代码返回到原始函数。 我定义了两个简单的函数,并使用objump来获取它们的汇编代码: // unsigned char *g_code = "x55x48x89xe5xb8x2ax00x00x00x5dxc3"; int g() { return 42; } // unsigned char *f_code_original = "x5 ..
发布时间:2022-09-21 10:43:38 其他开发

使用指向非常数的指针和指向相同地址的常量参数的指针的函数调用

我要编写一个函数,该函数使用指针输入一个数据数组并输出另一个数据数组。 我想知道,如果src和dst都指向同一个地址,结果会是什么,因为我知道编译器可以针对const进行优化。它是不是未定义的行为?(我标记了C和C++,因为我不确定它们之间的答案是否会不同,我想知道两者的情况。) void f(const char *src, char *dst) { dst[2] = src ..
发布时间:2022-09-20 20:48:10 C/C++开发

在C语言中,是否有可能在语义上创建一个类型不完整的左值?

在C89标准中,我找到以下部分: 3.2.2.1 L值和功能指示符 除非它是sizeof运算符、一元&;运算符、++运算符、--运算符或的左操作数的操作数。运算符或赋值运算符,则不具有数组类型的左值将转换为存储在指定对象中的值(不再是左值)。如果左值具有限定类型,则该值具有左值类型的非限定版本;否则,该值具有左值类型。如果左值的类型不完整并且没有数组类型,则行为未定义。 如果我 ..

DirectShow视频捕获筛选器IAMBufferNeairation::GetAllocatorProperties返回E_FAIL

我正在尝试检查音频/视频捕获筛选器的分配器属性。我使用IAMBufferNegotiation::GetAllocatorProperties并连接了捕获过滤器的输出引脚。它可以与音频捕获筛选器配合使用,但不能与视频捕获筛选器配合使用。 带音频捕获过滤器: HRESULT:S_OK CBuffers:4 CbBuffer:88200 CbAlign:1 Cb前缀:0 带视频捕 ..
发布时间:2022-09-06 21:23:35 其他开发

根据这种情况,如何将C程序划分为页面,然后放入RAM帧中?

查看此方案,然后回答以下问题: 如您所见,有一个简单的C程序粗略地转换为汇编指令。为简单起见,让我们假设每条指令是3字节长,我们假设页面和帧大小也是3字节长。 此过程流正确吗? 程序是否真的分散到页面中,然后像那样放入RAM框架中? 如果是这样,系统如何能够将特定页面与它们所属的特定段相关联? 我在一本操作系统书中读到分段和分页可以共存。此方案是否与此方案相关? ..
发布时间:2022-09-06 16:16:53 其他开发

串口通信中对校验和的需求

我目前正在做一个项目,涉及从PC(USB到C#编码的串口应用程序)到嵌入式平台(STM32F4)的串口COM。 我发现在某些情况下,在通信帧中必须有一个校验和。 通信配置: 波特率=115200, 无奇偶校验位 One StopBit 无握手 帧长度:16字节 是否值得在我的应用程序中添加校验和?我应该(不)拥有此校验和的原因是什么? 感谢您的答复。 ..
发布时间:2022-09-05 19:36:49 C#/.NET

什么才是!!(砰)刻薄?

在任何地方都找不到对此的引用--我有以下我正在尝试使用的代码,任何人请告诉我这是什么!!在这种情况下意味着什么?只是想澄清一下,这是“砰”的一声!不是“管道”||。提前感谢! /* Branch prediction */ #ifdef __GNUC__ # define likely(p) __builtin_expect(!!(p), 1) # define unlikely(p ..
发布时间:2022-09-05 09:29:38 其他开发

当我尝试释放(void*key)时检测到堆损坏

在程序结束时遇到释放内存的问题。 这是学校的练习,用ADT实现二叉树,用数据类型char具体实现。 释放代码: void free_tree(TreeNode *root){ TreeNode *cur; if (!root) return; else{ cur = root; free_tree(cur->left); free_tree(cur->right); free(cur- ..
发布时间:2022-09-03 23:40:10 其他开发

使用FREE()时检测到堆损坏(&Q)

我对C语言还很陌生(这实际上是我第一次使用指针赋值),而且我找不出这个错误... 以下是我的代码: void str_rv(char c[]) { int i, len = str_ln(c); char *rev = (char*)calloc(len, sizeof(char)); check_mem(rev); for (i = 0; i ..
发布时间:2022-09-03 23:27:19 其他开发

单插槽双堆栈

我正在开发双堆栈客户端-服务器通信。我是古董们: 我是否必须打开两个套接字-一个用于IPv4,一个用于IPv6,或者有一个选项可以打开用于IPv6的套接字,它将能够同时使用IPv4和IPv6连接? 例如,如果我像这样打开一个套接字: SOCKET sock = socket(AF_INET6, SOCK_STREAM, 0); 然后调用 int mode = 0; set ..
发布时间:2022-09-01 23:50:05 其他开发

可以更改va_arg的值吗?

我想做一个函数,其中的参数是一个向量和多个参数。然后我将向量值逐个赋给这多个参数。 我下面的代码不正确,因为您不能使用宏va_arg(ap,int*)=VECTOR[i];来执行此操作。 所以我想知道是否有方法可以更改多个值的值。 #include #include #include void assign_va ..
发布时间:2022-08-31 16:27:31 其他开发