小编Agn*_*nes的帖子

经典数组与 std::array

我试试这个简单的程序:

int* getElement(int arrayy[], int index) {
     return &arrayy[index];
}

int main() {

    int arrayy[4]{};

    *getElement(arrayy, 2)=50;

    std::cout << arrayy[2] << '\n';// here it prints 50 !

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

getElement() 将通过指针返回返回数组元素的地址,在 main 中取消引用它,然后更改值。

我想std::array 代替经典数组做同样的事情。

int* getElement(std::array<int, 4> arrayy, int index) {
    return &arrayy[index];
}

int main() {


    std::array<int, 4> arrayy{};

    *getElement(arrayy, 2)=50;

    std::cout << arrayy[2] << '\n';//here it prints 0 !

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

在第一个它打印 50 和在第二个 0 !

std::array按来电值传递?

c++ arrays

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

无法从 csv 文件中选择一列

我使用 Perl 通过 DBI 连接到 DBD::CSV,连接运行良好,当我启动时

SELECT * FROM dp_id.csv 
Run Code Online (Sandbox Code Playgroud)

它工作正常,但是当我想提取单列时。

my $dbh = DBI->connect ("dbi:CSV:", undef, undef, { f_dir => "." });

my $query = " SELECT DpName from dp_id.csv";


my $sth   = $dbh->prepare ($query);
$sth->execute ();

while (my @row = $sth->fetchrow_array)
{
    print @row,"\n";
}
Run Code Online (Sandbox Code Playgroud)

我有这个错误

 Execution ERROR: No such column 'dpname' called from extract.pl at 20.
 [for Statement " SELECT DpName from dp_id.csv"] at extract.pl line 20.
 DBD::CSV::st fetchrow_array failed: Attempt to fetch row without a preceding …
Run Code Online (Sandbox Code Playgroud)

sql csv perl odbc dbi

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

标签 统计

arrays ×1

c++ ×1

csv ×1

dbi ×1

odbc ×1

perl ×1

sql ×1