Articles of 数组

如何从Linux shell中的文件中的二维数组中select一个元素

我是新的shell脚本,我需要的是从包含2d数组的文件中读取。 假设有一个名为test.dat的文件,其中包含以下值: – Paris London Lisbon – Manchester Nurnberg Istanbul – Stockholm Kopenhag Berlin 在Linux bash脚本中从这张表中select一个元素最简单的方法是什么? 例如,用户input-r 2 -c 2 test.dat,这意味着select在行[2]和列[2](Nurnberg)的元素。 我已经看到了读取命令和谷歌search,但大部分的例子是关于1D数组。 这个看起来很熟悉,但是完全不能理解。

如何读取csv文件到bash脚本中的数组

我写了下面的代码来读取我的csv文件(它有固定数量的列,但不是固定的行数)到我的脚本作为一个数组。 我需要它是一个shell脚本。 usernames x1 x2 x3 x4 username1, 5 5 4 2 username2, 6 3 2 0 username3, 8 4 9 3 我的代码 #!/bin/bash set oldIFS = $IFS set IFS=, read -a line < something.csv 我用过的另一个选项是 #!/bin/bash while IFS=$'\t' reaad -r -a line do echo $line done < something.csv 对于这两个我试过一些testing代码,看看arrays的大小将是什么,我似乎得到了第一个10的大小,但arrays只输出用户名。 对于第二个,我似乎得到0的大小,但数组输出整个csv。 帮助非常感谢!

C ++:如何将string对象复制到一个int数组?

我在C ++中有一串数字:like string str =“1234567012” 我希望将其复制到一个int数组中,使数组中的每个元素都有一个数字。 现在我可以使用一个迭代器,每次迭代一个,并使用static_cast<int>(*iter) 。 但是有没有更简单直接的方法? 最后我想recopy int数组到string数组。 请帮助我以上两个步骤。

传递一个数组作为Linux内核模块的命令行参数

我想将一组数据传递给Linux内核模块。 在内核中: int a[5]; int count; module_param_array(a, int, &count, 0); 但我不知道如何从命令行传递值。 如果它是一个variables,我将使用: insmod k1.ko a=10

溢出的缓冲区数据不会连续存储

我有以下代码来模拟缓冲区溢出。 编辑:我错过了下面的代码中的重要一步。 随着讨论的进行,variablesc得到了修改。 void function (int fd, int e) { int i = 0; int n; char c; char s[44]; . . c = getchar(fd); . //Some check on c s[i++] = c; . //Some more local variables and some operations on them. } 我想通过发送更多的input> 4字节溢出缓冲区,以查看如何本地variables和EBP和RET和参数得到修改。 但是,当我在GDB中debugging以查看堆栈帧时,此缓冲区溢出,溢出的数据似乎不会被分配连续的内存位置。 缓冲区基址:0xbfff fdb3 C地址:0xbfff fddf地址:0xbfff fde0 正如你所看到的,我的inputstring包含了大量的NOP(\ x90),然后大量的A(\ x41)。 […]

在arraysbash中存储grep输出

我需要在目录中search一个模式,并将包含它的文件的名称保存在一个数组中。 search模式: grep -HR "pattern" . | cut -d: -f1 这会打印出包含“pattern”的所有文件名。 如果我尝试: targets=$(grep -HR "pattern" . | cut -d: -f1) length=${#targets[@]} for ((i = 0; i != length; i++)); do echo "target $i: '${targets[i]}'" done 这只打印一个包含所有文件名的string的元素。 output: target 0: 'file0 file1 .. fileN' 但是我需要: output: target 0: 'file0' output: target 1: 'file1' ….. output: target […]

哪个程序创build一个C数组给定任何文件?

我记得在过去看到一个程序,将采取任何文件,并生成一个代表该文件作为输出的C数组; 在某些情况下会阻止分配一个单独的文件。 哪个Unix / Linux程序呢?

如何制作System :: Windows :: Forms :: Checkbox ^的向量/数组

找不到任何问题的答案,甚至没有任何问题。 所以我想要做的,是一个std :: vector,也许只是一个正常的数组,checkbox。 std::vector< System::Windows::Forms::CheckBox^ >m_items; m_items.push_back( myCheckbox ); 这就是我目前所拥有的,显然是行不通的。 所以,有没有人有任何想法,如何得到它的工作,因为我尽我所能,但载体似乎不支持checkbox。 Incase你需要错误代码: c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xmemory(200): error C3699: '&&' : cannot use this indirection on type 'System::Windows::Forms::CheckBox ^' 1> c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\vector(421) : see reference to class template instantiation 'std::allocator<_Ty>' being compiled 1> with 1> [ 1> _Ty=System::Windows::Forms::CheckBox ^ […]

在Arduino库中传递数组

我想写一个库,读取5个variables,然后通过串口发送给蓝牙reciever,我得到了一些错误,我不知道从哪里去,我需要实现指针? 这里是Arduino代码…. #include <serialComms.h> serialComms testing; void setup() { Serial.begin(9600); } char data[] = {1,2,3,4,5,6}; void loop() { for(int t = 0;t<6;t++) { data[t] = data[t]++; } testing.updateUser(data); delay(250); } serialComms.cpp #include <Arduino.h> #include <serialComms.h> void serialComms::init() { // This is where the constructor would be…right now we are too stupid to have one } […]

批量创build多行数组

我正在尝试使用batch file将文件列表复制到特定的目录。 我需要做的第一件事就是创build一个文件名列表。 我看到这个post在Windows Batch中创build列表或数组 。 以下工作正常。 但是我并不高兴它是在一条线上。 随着我的文件列表变得越来越大,变得很难阅读。 set FILE_LIST=( "file1.txt" "file2.txt" "file3.txt" ) 然后我注意到这个博客 。 它创build一个包含多行的数组。 set FILE_LIST[0]="file1.txt" set FILE_LIST[1]="file2.txt" set FILE_LIST[2]="file3.txt" 我想知道是否有创build一个数组的方式如下: set FILE_LIST=( "file1.txt" "file2.txt" "file3.txt" ) 这样我就可以将文件名分隔成多行,而不必担心索引。