小编tra*_*att的帖子

奇怪的堆栈溢出?

我遇到了一个奇怪的情况,它将一个指针传递给一个结构,该结构在struct {}定义中定义了一个非常大的数组,一个大小为34MB的浮点数组.简而言之,伪代码看起来像这样:

typedef config_t{
  ...
  float values[64000][64];
} CONFIG;


int32_t Create_Structures(CONFIG **the_config)
{
  CONFIG  *local_config;
  int32_t number_nodes;

  number_nodes = Find_Nodes();

  local_config = (CONFIG *)calloc(number_nodes,sizeof(CONFIG));
  *the_config = local_config;
  return(number_nodes);
}


int32_t Read_Config_File(CONFIG *the_config)
{
    /* do init work here */
    return(SUCCESS);
}


main()
{
    CONFIG *the_config;
    int32_t number_nodes,rc;

    number_nodes = Create_Structures(&the_config);

    rc = Read_Config_File(the_config);
    ...
    exit(0);
}
Run Code Online (Sandbox Code Playgroud)

代码编译得很好,但是当我尝试运行它时,我会在{Read_Config_File()下面得到一个SIGSEGV.

(gdb) run
...
Program received signal SIGSEGV, Segmentation fault.
0x0000000000407d0a in Read_Config_File (the_config=Cannot access memory at address 0x7ffffdf45428
) at ../src/config_parsing.c:763
763 { …
Run Code Online (Sandbox Code Playgroud)

c stack-overflow pointers

5
推荐指数
1
解决办法
2815
查看次数

运行 dpkg -i 时 Docker 容器内出现“logname:无登录名”

我需要在 Ubuntu 18.04 Docker 容器内安装 SDK 包,但经常遇到这个问题:

theuser@e9fa4f39e0f0:/src/spinnaker$ sudo dpkg -i libspinnaker_2.2.0.48_arm64.deb
(Reading database ... 52013 files and directories currently installed.)
Preparing to unpack libspinnaker_2.2.0.48_arm64.deb ...
Unpacking libspinnaker (2.2.0.48) over (2.2.0.48) ...
logname: no login name
dpkg: warning: old libspinnaker package post-removal script subprocess returned error exit status 1
dpkg: trying script from the new package instead ...
logname: no login name
dpkg: error processing archive libspinnaker_2.2.0.48_arm64.deb (--install):
 new libspinnaker package post-removal script subprocess returned error exit status 1
logname: …
Run Code Online (Sandbox Code Playgroud)

dpkg docker

3
推荐指数
1
解决办法
1083
查看次数

VB - 等待对象创建

我正在尝试使用标准方法从Excel外部访问RhinoScript模块(在我的案例中是Windows 10上的Excel 365).

Dim Rhino As Object
Dim RhinoScript As Object

Set Rhino = CreateObject("Rhino4.Application")
Set RhinoScript = Rhino.GetScriptObject()
Run Code Online (Sandbox Code Playgroud)

但是我在最后一行遇到了"Runtime 424 - Object Required"错误.

问题似乎是GetScriptObject没有等待CreateObject完全完成,因为当Rhino4启动时,Windows 10的UAC将提示我允许Updater在允许它启动GUI之前对系统进行更改.如果我调试这些语句并逐行进行,以便在GetScriptObject命中之前Rhino4有时间完全启动,那么一切正常.那么,有没有办法让GetScriptObject等到Rhino4完全启动?我已经尝试设置一个循环来检查Rhino的值(Nothing?),但它会立即失效.我对VB有点新,所以对可能是一个新手问题道歉.

谢谢,

马特

excel vba excel-vba

2
推荐指数
1
解决办法
205
查看次数

在字符串中的两个分隔符之间应用Perl替换

我正在尝试进行一些MATLAB到R的转换,现有的脚本只能让我到目前为止.缺少的一件事是矩阵的处理.

我想用Perl来自:

bbox = [minX maxX minY maxY minZ maxZ]
Run Code Online (Sandbox Code Playgroud)

至:

bbox <- c(minX,maxX,minY,maxY,minZ,maxZ)
Run Code Online (Sandbox Code Playgroud)

更换=<-,而且[]()很容易,但对空间的全局查找/替换以逗号将无法正常工作.

如何将操作限制在方括号之间?

perl matlab r

0
推荐指数
1
解决办法
323
查看次数

标签 统计

c ×1

docker ×1

dpkg ×1

excel ×1

excel-vba ×1

matlab ×1

perl ×1

pointers ×1

r ×1

stack-overflow ×1

vba ×1