小编Ano*_*ist的帖子

未定义的引用`std :: ios_base :: Init :: Init()'

我写这段代码来读取3个文件,TM是方阵的大小,LER是一个数组的行数,从最后一个值定义一个非方矩阵(ler/2)*2

然后......代码读取一个具有某种关系的文件,所有都是数字并分配给C [ler].

然后...... C [ler]被分配给B [ler/2] [2].

B [ler/2] [2]中每行的那些坐标分配给a和b.

a和b是矩阵A [tm] [tm]的行和列,其中加1.

我的代码崩溃,我不知道错误是什么.

当我尝试编译它时,编译器gcc -g -o MatSim MatSim.cpp提示:

/usr/include/c++/4.6/iostream:75: undefined reference to `std::ios_base::Init::Init()'
/usr/include/c++/4.6/iostream:75: undefined reference to `std::ios_base::Init::~Init()'
collect2: ld returned 1 exit status
Run Code Online (Sandbox Code Playgroud)

另外,当我尝试编译它时,编译器f77 -o MatSim MatSim.cpp提示:

/tmp/cc6ewlkf.o: In function `__static_initialization_and_destruction_0(int, int)':
MatSim.cpp:(.text+0x17ad4a): undefined reference to `std::ios_base::Init::Init()'
MatSim.cpp:(.text+0x17ad4f): undefined reference to `std::ios_base::Init::~Init()'
collect2: ld returned 1 exit status
Run Code Online (Sandbox Code Playgroud)

主要问题是库问题,使用以下代码编译代码:

 g++ -g -o MatSim MatSim.cpp -lstdc
Run Code Online (Sandbox Code Playgroud)

还是行不通?安装库:

sudo apt-get install g++-multilib
Run Code Online (Sandbox Code Playgroud)

c coredump matrix

63
推荐指数
2
解决办法
9万
查看次数

以列格式输出格式

我想知道如何格式化以下输出:

-0.3116274D-04
-0.2389361D-04
-0.1192458D-04
0.3306203D-04
0.2534987D-04
0.1265136D-04
-0.2167920D-04
-0.3713258D-04
-0.2294900D-05
-0.4151710D-05
-0.7674479D-03
-0.5749288D-04
0.1393479D-04
0.6763913D-04
0.2515100D-05
-0.3638000D-06
-0.2630000D-06
-0.2445230D-06
0.1534680D-05
0.1579750D-04
0.2922010D-04
0.5390530D-04
0.8701990D-04
0.1132741D-03
0.9665700D-04
0.3337340D-04
-0.4121240D-05
Run Code Online (Sandbox Code Playgroud)

通过首先转置为五列:

-0.3116274D-04  -0.2389361D-04  -0.1192458D-04   0.3306203D-04   0.2534987D-04
 0.1265136D-04  -0.2167920D-04  -0.3713258D-04  -0.2294900D-05  -0.4151710D-05
-0.7674479D-03  -0.5749288D-04   0.1393479D-04   0.6763913D-04   0.2515100D-05
-0.3638000D-06  -0.2630000D-06  -0.2445230D-06   0.1534680D-05   0.1579750D-04
 0.2922010D-04   0.5390530D-04   0.8701990D-04   0.1132741D-03   0.9665700D-04
 0.3337340D-04  -0.4121240D-05          
Run Code Online (Sandbox Code Playgroud)

我的第一个方法是:

sed 's/\n//g' File | column -n
Run Code Online (Sandbox Code Playgroud)

bash awk grep sed

9
推荐指数
2
解决办法
2万
查看次数

如何通过将行号作为变量来删除一行?

我想通过将数字作为变量传递来删除文档的一行,如下所示:

ERR=`set of bash commands` ;  sed '${ERR}d' file
Run Code Online (Sandbox Code Playgroud)

但是单引号中的上述sed命令不起作用.那么如何实现这个任务呢?

bash shell

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

如何通过变量传递filename以通过awk读取它

美好的一天,

我想知道如何将文件名传递给awk作为变量,以便awk读取它.

到目前为止我做了:

echo    file1   >  Aenumerar
echo    file2   >> Aenumerar
echo    file3   >> Aenumerar

AE=`grep -c '' Aenumerar`
r=1
while [ $r -le $AE ]; do
    lista=`awk "NR==$r {print $0}" Aenumerar`
    AEList=`grep -c '' $lista`
    s=1
    while [ $s -le $AEList ]; do
        word=`awk -v var=$s 'NR==var {print $1}' $lista`
        echo $word
    let "s = s + 1"
    done
let "r = r + 1"
done
Run Code Online (Sandbox Code Playgroud)

非常感谢您提供任何线索或其他简单的方法来使用bash命令行

bash shell awk

4
推荐指数
2
解决办法
486
查看次数

AWK通过传递变量替换特定行的模式

我试图将两个变量传递给awk,以便在特定行(-v var2)中用空格("")替换一个单词(-v var1 ).当我运行它时,在我想要的线路上没有任何东西被替换.

我的第一个做法是:

palabra=betina; i=5 ; awk -v var1="$i" -v var2="$palabra" 'NR==var1 {sub("var2"," ")}{print }' Countries > tmp
Run Code Online (Sandbox Code Playgroud)

"国家"文件中,内容为:

usa
usa
colombia
spain
betina
Run Code Online (Sandbox Code Playgroud)

variables awk line

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

C编程中非常巨大的矩阵

今天是个好日子,

我是 C 编程的新手,我对如何在 C 中处理非常大的矩阵没有很多知识。例如,矩阵大小为 30.000 x 30.000。

我的第一种方法是动态存储内存:

int main()
{      int **mat;
    int j;
    mat = (int **)malloc(R*sizeof(int*));
    for(j=0;j<R;j++)
        mat[j]=(int*)malloc(P*sizeof(int));
}
Run Code Online (Sandbox Code Playgroud)

处理 8.000 x 8.000 的 +/- 矩阵是个好主意。但是,不是更大。所以,我想请求任何来处理这种巨大的矩阵。

正如我之前所说:我是 C 新手,所以请不要期望太多的经验。

提前感谢您的任何建议,

大卫·亚历杭德罗。

PD:我的笔记本电脑配置是 linux ubuntu、64 位、i7 和 4GB 内存。

c matrix

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

打印所有列,但首先按pattern,bash分隔

祝大家好日子

我想知道如何打印所有列,但首先,每列被分隔;.

例:

abc; def; ghi; jkl
Run Code Online (Sandbox Code Playgroud)

获得:

def; ghi; jkl
Run Code Online (Sandbox Code Playgroud)

到目前为止我已经完成了

awk 'BEGIN { FS = ";" } ; {for(i=2;i<NF;i++)printf "%s",$i OFS; if (NF) printf "%s",$NF; printf ORS}'
Run Code Online (Sandbox Code Playgroud)

非常感谢任何线索.

bash shell

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

在bash中粘贴带有扩展分隔符的文件

美好的一天!

今天,我想知道如何使用此分隔符粘贴多个文件:,,.

当我使用时:

paste -d',,' ...
Run Code Online (Sandbox Code Playgroud)

输出只介绍一个 ,

我需要双逗号才能更好地处理 csv 文件,提前感谢您提供任何线索

bash paste

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

如何替换特定行号的换行符?

祝大家好日子

我想知道如何更换特定行号的换行符.

到目前为止我已经完成了:[Linenumber = 11]

sed ':a;N;$!ba;11s/\n//g'
Run Code Online (Sandbox Code Playgroud)

提前感谢任何线索

bash awk grep sed

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

在特定行号处引入字符

祝大家好日子

今天,我想知道如何在特定行的末尾引入一个字符.

初始行:(该数字对应行号.但是,它不是文件的一部分)

...
101 ...
102 a,b,c,d
103 ...
...
Run Code Online (Sandbox Code Playgroud)

排队我想要的:

...
101 ...
102 a,b,c,d,
103 ...
...
Run Code Online (Sandbox Code Playgroud)

提前感谢任何线索

bash awk grep sed

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

标签 统计

bash ×7

awk ×5

grep ×3

sed ×3

shell ×3

c ×2

matrix ×2

coredump ×1

line ×1

paste ×1

variables ×1