- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我尝试在代码块上构建并运行以下代码,但它崩溃并返回 (0xC0000005) 错误。我主要怀疑 gCRSF_gibbs 函数中对指针 n_k 使用 realloc,但是我不确定如何跟踪崩溃的根源。这不是我的原始代码,而且我也是 C 菜鸟。感谢任何形式的帮助。
#include <stdio.h>
#include "string.h"
#include <math.h>
#include <stdlib.h>
int BinarySearch(double probrnd, double *prob_cumsum, int Ksize) {
int k, kstart, kend;
if (probrnd <=prob_cumsum[0])
return(0);
else {
for (kstart=1, kend=Ksize-1; ; ) {
if (kstart >= kend) {
return(kend);
}
else {
k = kstart+ (kend-kstart)/2;
if (prob_cumsum[k-1]>probrnd && prob_cumsum[k]>probrnd)
kend = k-1;
else if (prob_cumsum[k-1]<probrnd && prob_cumsum[k]<probrnd)
kstart = k+1;
else
return(k);
}
}
}
return(k);}
void gCRSF_gibbs(double *z, double *n_k, double *SampleDex,
double *r, double *a, double *p,
int *Ksize, int *WordNum) {
int i, j, k;
double mass;
double *prob_cumsum;
double cum_sum, probrnd;
void *newptr;
prob_cumsum = (double *) calloc(Ksize[0],sizeof(double));
mass = r[0]*pow(p[0],-a[0]);
for (i=0;i<WordNum[0];i++){
j = (int) SampleDex[i] -1;
k = (int) z[j] -1;
if(z[j]>0){
n_k[k]--;
}
for (cum_sum=0, k=0; k<Ksize[0]; k++) {
cum_sum += n_k[k]-a[0];
prob_cumsum[k] = cum_sum;
}
if ( ((double) rand() / RAND_MAX * (cum_sum + mass) < cum_sum)){
probrnd = (double)rand()/(double)RAND_MAX*cum_sum;
k = BinarySearch(probrnd, prob_cumsum, Ksize[0]);
}
else{
for (k=0; k<Ksize[0]; k++){
if ((int) n_k[k]==0){
break;
}
}
if (k==Ksize[0]){
Ksize[0]++;
newptr = realloc(n_k,sizeof(*n_k)*Ksize[0]);
n_k = newptr;
n_k[Ksize[0]-1]=0;
prob_cumsum = realloc(prob_cumsum,sizeof(*prob_cumsum)*Ksize[0]);
}
}
z[j] = k+1;
n_k[k]++;
}
free(prob_cumsum);}
int main() {
double *z, *n_k, *sampleDex;
double *r, *a, *p;
int *Ksize, *WordNum;
z[0]=1;z[1]=1;z[2]=2;z[3]=0;z[4]=0;
n_k[0]=2;n_k[1]=1;
sampleDex[0]=4;sampleDex[1]=5;
r[0]=5;a[0]=0.5;p[0]=0.5;
Ksize[0]=2;WordNum[0]=2;
gCRSF_gibbs(z,n_k,sampleDex,r,a,p,Ksize,WordNum);
return 0;}
最佳答案
让我们将您的问题简化为表现出相同行为的最小示例:
int main()
{
double *z;
z[0] = 1; // Undefined behaviour!
return 0;
}
这里,z
是一个未初始化的指针;它指向一个随机位置。取消引用它,即尝试读取或写入指针指向的位置会导致未定义的行为。
您使用 z
作为 5 个 float 的数组。解决此问题的最简单方法是将 z
创建为本地数组:
double z[5] = {1, 1, 2, 0, 0};
您的代码中可能存在更多错误。此答案仅解决明显的分段违规的原因。
关于代码:: block 崩溃:进程返回(0xC0000005),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34648717/
我无法弄清楚为什么会这样。 $ cat | g++ -xc - #include int main(int argc, char* argv[]) { return 0; } :1: fatal
我试图断言标签(动态填充)的值包含一个子字符串作为 UITest 结果的一部分。 我的问题是 XCTAssert 似乎不允许子字符串或近似匹配(从我能找到的内容来看)。有没有人对我如何编写以下内容以找
有谁知道如何处理 tvOS 上的 UI XCTest 的滑动手势?我的页面顶部有一个隐藏的导航栏,在 Remote 上向下滑动时会出现该导航栏。我似乎无法在 UI 测试中使用 XCUIRemote.s
从 Xcode10 开始,我们可以在多个模拟器上并行运行 UI 测试。但是,我找不到在多个设备上运行的方法。这不可能吗? 谢谢,R 最佳答案 这是可能的,但只能通过命令行。替代方法 - 设置机器人(X
我在应用商店提交应用时选择了 xc adhoc * 分发配置文件。我想我应该选择特定于应用程序的分发配置文件。 但现在处于等待审核状态。我的问题是苹果是否批准了它? 或者我需要在 iTunes 上重新
如果用户需要在登录后重新验证,我会运行一段代码。在 UI 测试期间,有时会显示此弹出窗口,因此我会检查它是否存在 if (XCUIApplication().staticText["authLabel
我正在尝试同时使用 XCUI 和 XC 测试。我找到了这个 twitter post说这是可能的。但是,我应该在build设置的哪个部分放置这些新属性? 我问是因为我尝试了该方法并将这些设置放在项目目
所以,让我先解释一下我的问题。 我不想中继我的网络服务器数据,我想为我的 XCUITests stub 数据。因此,我将确保它在 100% 的时间内返回正确的数据,有时我需要测试一些特定的(例如错误或
我正在尝试从 TextView 中删除以前的值,但由于光标始终位于 TextView 的开头,所以我无法删除。我正在使用 extension XCUIElement { /** Re
我已经在 Ubuntu 上安装、配置了我的 Postgres XC 1.0.2。我能够毫无困难地设置 GTM、协调器、节点 1 和 2。但是当尝试在两个节点之间分发数据时,我收到了以下实际上相互矛盾的
我被要求重构包含片段的查询: SELECT @xi:=@xi+1 AS xc FROM (SELECT 1 UNION SELECT 2 UNION SELECT 3) xc1,
我试图求解一个线性系统 Xc=y那是方形的。我知道解决这个问题的方法是: 使用逆向 c= 使用高斯消元法 使用伪逆 据我所知,这些似乎与我认为的基本事实不符。 首先通过将 30 次多项式拟合到频率为
我从 Apple 开发者网站中删除了所有应用 ID 和配置文件。然后我创建了一个新的 Xcode 7.3.1 项目,并单击“未找到匹配的配置文件”消息旁边的“修复问题”。 它创建的应用ID称为“XC
我的 Xcode 突然生成了它自己的 Ad Hoc 配置文件。我的临时配置文件都很好,但是当我现在创建存档时,xcode 只生成它自己的配置文件。我不知道是什么导致了这个问题。 这是问题的截图。 当我
我尝试在 Glassfish 应用程序服务器(版本 4.1.1)上使用 JAX-RS 资源,但收到 java.lang.NoClassDefFoundError: org/codehaus/jacks
根据SourceForge Postgres-XC 的页面,在 Postgres-XC 中创建分布式表时,它可以使用属性 DISTRIBUTE BY : DISTRIBUTE BY REPLICATI
尝试在使用 SDWebImage 设置的 CocoaPods 上运行 XCTest,但我只能看到如下错误。有什么建议吗? :0: error: module name "" is not a vali
昨天我下载了Xcode 6,现在我遇到了一个我无法解决的问题。在我的成员(member)中心,我有有效的证书和临时供应(分发)。直到昨天,在 Xcode 5 中,如果我想将我的 .ipa 添加到 Te
我正在使用 Parse.com 将客户端推送通知从一台 iDevice 发送到另一台 iDevice。 它适用于“开发”设置,即- 在“开发”上设置的 appID 的推送通知设置 - 开发 SSL 证
我正在使用 Xcode 5。我有一个 OS X Framework/iOS 静态库项目,其中包含混合的 ObjC/C++ 代码和语言方言设置为 C11/C++11。 我添加了一个使用 XCTest 的
我是一名优秀的程序员,十分优秀!