ICode9

精准搜索请尝试: 精确搜索
  • 此C代码如何工作2019-10-11 09:08:43

    我正在一个现有的项目(由其他人编写)上,我无法理解这两个简单的功能. 我感兴趣的第一个函数包含以下内容: int iCounts[NUM_GRADES]; PROFILEMAN->GetMachineProfile()->GetGrades( pSong, GAMESTATE->GetCurrentStyle()->m_StepsType, iCounts ); 因此,我可以看到将iCounts传递给

  • c-通过数组末尾读取是否安全?2019-10-11 03:10:41

    假设我有一个这样的构造函数: MyColor(uint8 vec[]) { r = vec[0]; g = vec[1]; b = vec[2]; a = vec[3]; } 但是我这样称呼它(3个元素而不是4个元素): uint8 tmp[] = {1,2,3}; MyColor c(tmp); 但是现在vec [3]未定义…将此值分配给a是否安全?如果不是,没有很好的解决方法来检查

  • c-如何从构造函数传递排序谓词,即成员函数2019-10-11 03:10:00

    我有以下代码: template <class T> class GenericGeneticSolver { public: GenericGeneticSolver(IGenticSolverHelper<T>& helper, int generationSize) : mSolverHelper(helper), mGenerationSize(generationSize) { mCurrentGeneration.resize(

  • c-什么是裸露指针?2019-10-10 13:06:49

    观察Naked Pointers(请参阅第一个答复),问题非常简单: 什么是裸指标?解决方法:这是一个简单的例子: #include <memory> struct X { int a,b,c; }; int main() { std::shared_ptr<X> sp(new X); X* np = new X; delete np; } np是指向X类型对象的指针-如果您已动态分配

  • c-试图将父指针动态分配给函数内的子代会导致分段错误2019-10-10 09:10:09

    我一直在努力理解多态性和指针,但是这个概念使我有些不解.幸运的是我有stackoverflow和google,所以我的大多数问题都可以轻松解决.但是,我已经尝试修复这个分割错误了好几个小时了,但是没有运气,我不确定发生了什么.我已经精简了所有内容以尝试了解问题所在,但我认为我缺少动态分配

  • c-设置void *指针等于整数2019-10-10 09:09:30

    我对以下代码有疑问: int age = 20; void * pointer; pointer = alloc(sizeof(int), 0) pointer = (void*) age; 它是如何工作的? 指针的值是多少? 就这一行而言,这段代码会发生什么: 指针=(void *)年龄;解决方法:这段代码什么都不做. 首先,使用非标准分配方法为int大小分配了一个指

  • 用指针对链接列表C进行排序2019-10-10 06:09:10

    我一直为此问题苦苦挣扎数小时.我的目标是仅使用指针对链表进行排序(我无法将链表放入vec或数组中,然后进行排序).我得到了指向列表头节点的指针.我只能在指针上调用的方法是head-> next(下一个节点)和head-> key(存储在节点中的int值,用于进行比较).我一直在过度使用白板,并且尝试

  • c-转换指向派生类的指针以引用指向基类的指针2019-10-10 06:08:31

    为什么我不能将指向派生类的指针转换为指向基类的指针? struct Base { }; struct Derived : Base { }; int main() { Derived* derived = nullptr; static_cast<Base*&>(derived); } 我得到: invalid static_cast from type 'Derived*' to type 'Base*&'

  • C寻找数组中出现次数最多的元素2019-10-10 04:17:36

    我正在寻找一种确定C ptr数组中哪个元素出现次数最多(模式)的优雅方法. 例如,在 {"pear", "apple", "orange", "apple"} “苹果”元素是最常见的元素. 我以前的尝试失败了 编辑:数组已被排序. int getMode(int *students,int size) { int mode; int count=0, maxCou

  • python-swig char **作为指向char的指针*2019-10-09 23:57:12

    我在使用swig和char **作为指向变量char *的指针时遇到麻烦(不是作为char *的列表!!!).我找不到一种将指针包装到char *的方法. 目的是将级联的结果写入指针所引用的char *中. 以下是我的代码: 文件pointers.cpp: #include "pointers.h" #include <string.h> #include <stdlib.h> #incl

  • 如何根据c标准访问对象表示?2019-10-09 23:09:42

    如何访问object representation?为了回答这个问题,我将其分为两个问题: 1.如何获取对象表示的指针? 根据标准,我看不到任何获取对象表示形式的指针的方法.通常建议以这种方式获取它: some_type obj{}; const char * rep = reinterpret_cast<const unsigned char*>(&obj); 然而,在标准

  • c-将int值分配给地址2019-10-09 20:19:48

    我认为以下代码正确无误. int x, *ra; &ra = x; 和 int x, ra; &ra = x; 如果这两个代码段都正确,请帮助我.如果没有,您会在其中看到什么错误?解决方法:您的两个表达式都不正确,应该是: int x, *ra; ra = &x; // pointer variable assigning address of x &安培; amper

  • C中的类查找结构数组2019-10-09 16:14:44

    我正在尝试创建一个将输入字符串链接到类的结构数组,如下所示: struct {string command; CommandPath cPath;} cPathLookup[] = { {"set an alarm", AlarmCommandPath}, {"send an email", EmailCommandPath}, {"", NULL} }; 它的用法如下: CommandPath *cPath = N

  • c-如果新的失败,是否需要检查指针的有效性?2019-10-09 15:16:16

    如标题所述,我知道new会引发异常,但是该指针到底会发生什么呢?变成NULL?我在SO上检查了一些答案,但没有人解释. 在下面的检查示例中,指针是否保持在堆上?请提供有关此模式的完整信息 #include <windows.h> #include <cstdlib> #include <iostream> using namespace std; enum eRead

  • c – – >智能指针中的用法2019-10-09 07:07:46

    我有一个简单的智能指针实现,如下面的代码片段1所示.在第二个片段中有一个名为Dummy的虚拟测试类.代码片段3显示了我们如何利用这个简单的智能指针来访问函数foo(). 我的问题是关于我们使用 – >调用Dummy类中的函数foo()的方式.操作符. – &GT operator已经返回指向原始指针的指针

  • c – 使用特征矩阵构建3D结构的最有效选项2019-10-09 06:07:12

    我需要在我的代码上使用3D矩阵/数组结构,现在我依靠Eigen来处理我的矩阵和向量. 现在我正在使用new创建一个3D结构: MatrixXd* cube= new MatrixXd[60]; for (int i; i<60; i++) cube[i]=MatrixXd(60,60); 并且为了获得价值: double val; MatrixXd pos; for (int i; i<60; i++){

  • 对C指针和参考主题的困惑2019-10-09 05:19:27

    C中的以下参数传递机制有什么区别? void foo(int &x) void foo(int *x) void foo(int **x) void foo(int *&x) 我想知道参数在哪种情况下通过值传递或通过引用传递.解决方法: void foo(int &x) 将引用传递给整数.这是一个输入/输出参数,可以像函数中的常规整数一样使用.值被传递

  • java – 使用’if’语句检查后出现空指针异常2019-10-09 02:16:57

    我收到一个非常恼人的错误,说我得到一个空指针异常但是有一个if语句在继续之前检查文本是否为null: public String[] getFileData() throws IOException { String file_name = "C:/Users/Liloka/Source/textfiles/Lines.txt"; try { ReadFile file = new Read

  • c – 为什么模板函数不能将指向派生类的指针解析为指向基类的指针2019-10-09 02:06:36

    编译器在编译时是否无法获取指向派生类的指针并知道它有一个基类?看来它不能,基于以下测试.请在最后查看我发表问题的评论. 我怎样才能让它发挥作用? std::string nonSpecStr = "non specialized func"; std::string const specStr = "specialized func"; std::string const nonTemp

  • 使用指针C实现双链表实现2019-10-09 01:08:13

    我目前正在教自己C并且正在尝试使用部分完成的指针在C中实现双向链表.我知道代码当前无法处理悬空节点或输出错误,我将在下面实现这两个.但是,代码应该至少能够构造一个列表对象并向其添加元素.目前,当我尝试调用列表的构造函数时,我收到一个错误,表示我正在请求从LinkedList *到非

  • c – 数组何时充当c中的指针?2019-10-09 00:07:19

    我知道数组名称可以用作指针(尽管它是转换后的形式),但我的问题是,是否有一些其他实例,其中数组充当指针.解决方法:从技术上讲,数组名称永远不会充当指针.一个 数组类型(可能是数组名称)的表达式将转换任何时候数组类型不合法,但指针类型是指针.并且转换数组作为函数参数的声明进入

  • c – 错误:未分配被释放的指针2019-10-09 00:06:19

    我试图重载赋值运算符来执行多边形对象的深层复制,程序编译,但我得到一个错误,我想要清除.以下是相关代码,如果您认为我需要添加更多,请发表评论.假设正确的#include和<<运算符过载以获得正确的输出等... 错误是:malloc:*对象0x1001c0的错误:未分配被释放的指针 *在malloc_error_brea

  • c中指针的奇怪行为2019-10-08 23:08:25

    以下结果非常有趣,我很难理解它们.基本上我有一个有int的类: class TestClass{ public: int test; TestClass() { test = 0; }; TestClass(int _test) { test = _test; }; ~TestClass() { /*do nothing*/ }; }; 一个测试函数,它接受TestClass的指针 void testFun

  • c – 删除一系列指针 – 我做得对吗?2019-10-08 18:10:39

    我对删除指针的问题感到有些愚蠢,但我需要确保以正确的方式删除,因为我正在进行程序的调试过程. 基本上我有几个指针数组,在我的头文件中定义如下: AsteroidView *_asteroidView[16]; 在for循环中,我然后初始化它们: for(int i = 0; i < 16; i++) { _asteroidView[i] =

  • C函数返回数组2019-10-08 16:07:31

    我是C的新手.我习惯用Java编程.这个特殊的问题给我带来了很大的问题,因为在处理数组时C不像Java那样.在C中,数组只是指针. 但为什么这个代码: #include <iostream> #define SIZE 3 using namespace std; void printArray(int*, int); int * getArray(); int ctr = 0; int main()

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有