小编mk.*_*k..的帖子

perl - 散列哈希 - 元素是如何存储的?

我是perl编程的新手,并且很难适应从C到perl.非常感谢你的帮助.

#!/usr/bin/perl
use warnings;
use strict;
use Data::Dumper;

my %tgs;
$tgs{"0"}{"1"} = 01;
$tgs{"0"}{"2"} = 02;
$tgs{"0"}{"3"} = 03;
$tgs{"1"}{"1"} = 11;
$tgs{"1"}{"2"} = 12;
$tgs{"1"}{"3"} = 13;
$tgs{"2"}{"1"} = 21;
$tgs{"2"}{"2"} = 22;
$tgs{"2"}{"3"} = 23;


print Dumper(\%tgs);
exit(0);
Run Code Online (Sandbox Code Playgroud)

o/p是

$VAR1 = {
          '1' => {
                   '1' => 11,
                   '3' => 13,
                   '2' => 12
                 },
          '0' => {
                   '1' => 1,
                   '3' => 3,
                   '2' => 2
                 },
          '2' => {
                   '1' => 21,
                   '3' => 23,
                   '2' …
Run Code Online (Sandbox Code Playgroud)

perl

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

NULL检查单个if语句中的嵌套指针

Struct {
    int a;
    struct sample *b;
} test;

int func(struct test *t1) {
  if (!t1 || !t1->b) {  // Is this statement ok?
    return _EINVAL
  }

  ...
}
Run Code Online (Sandbox Code Playgroud)

在单个if语句中检查嵌套指针是否可以?我是否可以始终假设将首先执行左检查(在我的示例中为!t1)?

c if-statement

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

在yocto build中添加tcpdump(Beaglebone Black)

我想将tcpdump添加到yocto build中

我发现,我需要补充meta-networkingbblayers.conf.meta-networking是分开的meta-openembedded

以下是我遵循的步骤:

  1. 下载完成meta-openembedded:git clone git@github.com:openembedded/meta-openembedded.git
  2. 检查出jethro分支并确认meta-networking/recipes-support/tcpdump/tcpdump_4.7.4.bb存在
  3. 添加meta-networking及其依赖包bblayers.conf

BBLAYERS

/home/linux/work/yocto/poky/meta-openembedded/meta-oe \
/home/linux/work/yocto/poky/meta-openembedded/meta-networking \
/home/linux/work/yocto/poky/meta-openembedded/meta-python \
Run Code Online (Sandbox Code Playgroud)
  1. 触发完整构建并将图像复制到SD卡上.

启动BBB(Beaglebone black)后,我仍然无法看到tcpdump二进制文件.我很确定我错过了一些东西.我是yocto的新手.任何指导都会非常有帮助.

recipe tcpdump beagleboneblack yocto

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

如何在android本机代码中使用共享内存?

我正在将现有的 linux 应用程序移植到 android。该应用程序正在使用共享内存 API 等shm_open()

检查android source 中的仿生,我发现这些 API 不受支持。因此我在构建过程中遇到链接错误。

external/l2/avbtp.c:138: error: undefined reference to 'shm_open'
external/l2/avbtp.c:151: error: undefined reference to 'shm_unlink'
external/l2/avbtp.c:186: error: undefined reference to 'shm_unlink'
Run Code Online (Sandbox Code Playgroud)

如何正确解决这个问题?

android shared-memory android-ndk

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

在 Android 中播放 PCM 流

我正在通过以太网端口获取 PCM 流。到目前为止,我能够捕获数据包并从中取出 pcm_payload 数据。

如何在 android 中播放原始 PCM 数据?PCM 数据是 16 位 2 通道,44.1kHZ 速率流。

我是 android 应用程序编程和音频编程的新手。对不起,如果这是一个微不足道的问题。

audio android pcm audio-streaming

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

O_DIRECT标志无效

董事会简介:

我正在制作一块有ST40芯片的主板,主要用于捕获DVB流并在电视上显示.该板在Linux OS上运行.

问题描述:

我试图使用O_DIRECT标志从USB上的大文件(大约2 GB)读取数据.以下是相关的代码段:

char subblk[BLKSIZE];
open (filename2,O_CREAT|O_WRONLY|O_DIRECT,S_IRWXU|S_IRWXG|S_IRWXO);
read (fp,subblk,BLKSIZE);
Run Code Online (Sandbox Code Playgroud)

它说读取失败,错误编号为22 - "EINVAL 22 /* Invalid argument"

为了澄清这是一个编程问题还是一些与架构有关的问题,我在我的桌面系统上运行了相同的代码,它工作得非常好,我能够打印我刚读过的字符.我的ST40主板出现故障的原因是什么?

c linux io

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

kzalloc() - 一次调用的最大大小?

我们可以在一次调用中使用 kzalloc() 分配的最大大小是多少?

这是一个非常常见的问题。另外请让我知道我是否可以验证该值。

kernel memory-management linux-kernel

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

Linux线程和进程 - CPU亲和性

我几乎没有与线程和进程调度相关的查询.

  1. 当我的进程进入休眠状态并唤醒时,它是否始终安排在之前安排的同一CPU上?
  2. 当我从进程创建一个线程时,它是否也会在同一个CPU上执行?即使其他CPU是免费的并且正在睡觉.

我想具体了解Linux中的机制.我也通过pthread库创建线程.我面临一个随机的挂断问题,这个问题总是无法重现的.需要此信息才能朝着正确的方向前进.

linux multithreading pthreads process

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

如何防止Android设备进入睡眠状态(通过adb命令shell)

我正在使用带有android的嵌入式主板.不幸的是我无法使用显示器,因为我没有支持显示设备(LVDS显示器).

问题:

每次启动设备时,设备都会在一段时间后进入睡眠状态.

Restarting tasks ... done.
PM: suspend exit 1970-01-01 00:35:30.797352016 UTC
PM: suspend entry 1970-01-01 00:35:30.905410683 UTC
PM: Syncing filesystems ... done.
Freezing user space processes ... (elapsed 0.002 seconds) done.
Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.
Suspending console(s) (use no_console_suspend to debug)
Run Code Online (Sandbox Code Playgroud)

我如何从shell提示中避免它?我可以通过串口登录shell.

我无法修改设置,因为我无权访问显示.

android sleep suspend adb

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

在函数内部创建的对象的范围 - 如果在函数外部存储和访问引用,它们是否有效?

以下代码有效。但我不确定这样写是否真的可以。

class A {
private:
   struct packet {
       string header;
       string data;
   }
   vector<packet > packets;

public:
   void add_packet(string h, string d) {
      struct packet p1;   // Isnt this variable on stack and will be destroyed at the end of the function?
      p1.header = h;
      p1.data = d;
      packets.push_back(p1);  // Is it ok to add the variable on stack to a member variable?
   }

   void print_packets() {
      // Iterates over the packets and prints header and data
   }
}
Run Code Online (Sandbox Code Playgroud)

void …

c++ vector

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