小编Zuu*_*uup的帖子

分段故障:11; 基于范围的循环

我正在用C++编写一个小编程练习.目标是启动一个前32个指数为2的数组,然后输出它们.使用普通for循环没有问题,但我尝试使用C++ 11标准中引入的基于范围的for循环.在编译期间,我收到警告"基于范围的循环是一个C++ 11扩展[-Wc ++ 11-extensions]".运行程序我得到错误"Segmentation fault:11"而没有任何进一步的输出.

我已经知道elem变量以某种方式被破坏但我不知道如何.希望你能帮助一个n00b :)

#include <iostream>
#include <cmath>
using namespace std;

int main()
{
    const int LAENGE = 32;
    long potenzen[LAENGE];

    for(int elem : potenzen)
    {
        potenzen[elem] = pow(2.0, (double) (elem + 1));
    }

    for(int elem : potenzen)
    {
        cout << endl;
        cout << potenzen[elem];
    }

    cout << endl;

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ segmentation-fault c++11

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

Snakemake:通配符列表中的通配符的随机顺序

我在函数中索引我的snakemake通配符时遇到问题.由于某种原因,变量在"通配符"列表中的存储顺序各不相同.我使用该函数为我的一个规则生成输入文件的路径,并且随着正确值的位置发生变化,规则每次查询只会成功一次.如何在"通配符"列表中控制或修复通配符的位置?我添加了我的Snakefile的相关内容.

谢谢你,zuup

#!/usr/bin/env python3
import glob
import re

R_BIN = "Rscript"

pop = "lineA lineB".split()
group = "test control".split()
chrom = "X Y".split()

def getInput(Wildcards):
    pop = str(Wildcards[0])
    group = str(Wildcards[1])
    chrom = str(Wildcards[2])
    path = "Resources/bed/" + pop + "_" + group + r"_rep[1-5]/" + pop + "_" + group + r"_rep[1-5]_chr" + chrom + ".bed"
    return(glob.glob(path))

rule BED2BS:
    input:
        getInput
    output:
        wd + "Resources/bs/{pop}_{group}/{group}_chr{chrom}.RDS"
    shell:
        R_BIN + " Scripts/Script1.R {input} {output}"
Run Code Online (Sandbox Code Playgroud)

python wildcard snakemake

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

标签 统计

c++ ×1

c++11 ×1

python ×1

segmentation-fault ×1

snakemake ×1

wildcard ×1