我对C知之甚少,但我正在努力理解用它编写的程序.
我遇到过这一行,但我不确定这意味着什么:
fprintf(kinsh.fp, "%-.*lg", ndigits, kins[i+j*n]);
Run Code Online (Sandbox Code Playgroud)
我认为这意味着"将带有ndigits小数位或有效数字(以较短者为准)的数字打印到kinsh(这是一个文件).但是,我不知道哪个kins,这是一个数组,正在那里做.
我有没有误解-在上下文中,它会如果线路是从阅读更有意义kinsh和写入金穗卡?
我有一个如下列表:
1 . Fred 1 6 78 8 09
1 1 Geni 1 4 68 9 34
2 . Sam 3 4 56 6 89
3 . Flit 2 4 56 8 34
3 4 Dog 2 5 67 8 78
3 . Pig 2 5 67 2 21
Run Code Online (Sandbox Code Playgroud)
(实际列表除外是4000万行).
第二列中有重复的元素(即".")
我想用独特的标识符替换它们(例如".1",".2",".3"......".n ")
我尝试用bash循环/ sed组合来做这个,但它不起作用......
尝试失败:
for i in 1..4
do
sed -i "s_//._//."$i"_"$i""
done
Run Code Online (Sandbox Code Playgroud)
(从本质上讲,我一直想把你sed将替换每个ñ日""和" ñ ",但这并没有工作).