小编tar*_*yte的帖子

c中的持久局部变量

持久性变量是否未被广泛使用?我无法在网上或在我的C教科书索引中找到关于它们的更多信息 - C的艺术和科学.

您可以分享关于它们的任何内容,尤其是它们的范围和示例声明都会有所帮助.我猜是要声明他们使用'persistent'作为关键字?

static void foo( void ) {
  persistent unsigned int width = 5;
}
Run Code Online (Sandbox Code Playgroud)

这是我能找到的唯一其他有用的参考:"当电路板关闭和打开时,主电源运行时以及系统复位发生时,持久变量保持其状态.由于加载或卸载文件而下载代码时,持久变量将失去其状态." http://www.newtonlabs.com/ic/ic_5.html#SEC9

谢谢!

c variables persistent

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

n&〜(n - 1)这个功能有什么作用?

我被问到这个并打印出试图寻找模式的表格,但仍然没有看到任何意义.

uint16_t hmmm(uint16_t n) {
  return (n & ~(n - 1));
}
Run Code Online (Sandbox Code Playgroud)

数字滤波器的一部分?如果打印出双螺旋动画?

我真的很想知道这个问的人是否意味着n&(n - 1): n&(n-1)这个表达式是做什么的?

这是我写的一个小测试的一些输出:

in: 0, 0b00000000   out: 0, 0b00000000
in: 1, 0b00000001   out: 1, 0b00000001
in: 2, 0b00000010   out: 2, 0b00000010
in: 3, 0b00000011   out: 1, 0b00000001
in: 4, 0b00000100   out: 4, 0b00000100
in: 5, 0b00000101   out: 1, 0b00000001
in: 6, 0b00000110   out: 2, 0b00000010
in: 7, 0b00000111   out: 1, 0b00000001
in: 8, 0b00001000   out: 8, 0b00001000
in: 9, 0b00001001   out: 1, 0b00000001
in: 10, …
Run Code Online (Sandbox Code Playgroud)

c

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

我可以通过Chrome应用程序访问USB HID设备吗?

我有一个简单的小加密狗我想通过发送/接收基本USB消息进行调试.它枚举为一个HID设备(就像一个额外的鼠标),但我担心我将无法访问它.我忘记了硬件,几天都无法测试它.

继续构建chrome扩展以测试它是否是徒劳的努力?

Chrome应用程序,USB文档:https: //developer.chrome.com/apps/app_usb 入门示例:https: //github.com/GoogleChrome/chrome-app-samples/tree/master/usb/knob

javascript usb hid google-chrome-app

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

Chrome应用程序与Python?

我想在python中编写一个chrome应用程序.其中大部分都涉及通过pyusb/chrome.usb与硬件进行通信.我有一个用python编写的现有协议(因此感兴趣),并且想要简单介绍一些基本的按钮.

这个疯狂的想法有没有任何前进的道路?是否有任何转编者或支持?

python google-chrome-app

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

如何从Mac OSX中弹出USB HID设备以在Ubuntu VM中使用?

我在Mac上通过VirtualBox运行Ubuntu 14.04LTS,64位.我想通过python应用程序(pyusb)从我的VM与USB HID设备通信,但我无法选择设备.从VirtualBox - >设备 - > USB设备我看到我的设备,但它显示为灰色.

我希望找到一个可以在Mac终端上运行的命令来"放开"它,但它变得比我想象的更难.在通过Windows 7的Ubuntu VM上,我可以通过设备 - > USB设备 - >选择我的设备来控制USB HID设备并与它通话就好了.

有没有什么理由可以在mac上实现这一点?

macos usb virtualbox hid

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

如何在 JavaScript 中将 Uint8Array 转换为浮点数?

我有一个ArrayBuffer将其转换为 a 的对象Uint8Array,以便我可以使用带方括号的传统数组访问并收集子数组。现在我有了正确的 4 个字节集来描述 32 位(小端)浮点数,我似乎没有一种简单的方法来转换为浮点值:

var startIndex = 2;
var buffer = new Uint8Array(data)
buffer.subarray(startIndex, startIndex + 4);
var myNumber = ?uint8ArrayToFloat(buffer);
console.log(myNumber);
Run Code Online (Sandbox Code Playgroud)

我是 JavaScript 新手,仍在查看不同的文档......

javascript floating-point-conversion

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

如何构建有很多故障点的代码?

我有一段代码在很多地方都可能失败。每增加一个操作(也可能会失败),可读性就会变差。有没有更好的方法来构建这个?有这方面的设计模式吗?

int32_t InitializeMyThingy(void) {
  int32_t retcode;

  retcode = DoA();
  if (retcode != 0) return retcode;
  retcode = DoB();
  if (retcode != 0) return retcode;
  retcode = DoC();
  if (retcode != 0) return retcode;
  retcode = DoD();

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

或者(更具可读性?):

int32_t InitializeMyThingy(void) {
  int32_t retcode;

  retcode = DoA();
  if (0 == retcode) {
    retcode = DoB();
    if (0 == retcode) {
      retcode = DoC();
      if (0 == retcode) {
        retcode = DoD();
      }
    }
  }

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

c return-value

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

如何使用 Pathlib 检查一个路径是否在另一个路径中?

我正在尝试找到一种可读的方法来检查一条路径是否位于跨多个级别的另一条路径内。我可以检查直接父母,但到目前为止还不能超越。

import pathlib
path1 = pathlib.Path('/a/b')
path2 = pathlib.Path('/a/b/c/d')
path2.parent == path1  # <-- this is False, expected.
path2 in path1  # <-- this is False, UNEXPECTED.
Run Code Online (Sandbox Code Playgroud)

如何检查一条路径是否存在于另一条路径中?

或者是转向字符串比较和startwith绝对路径检查的最佳选择?

https://docs.python.org/3/library/pathlib.html

python-3.x pathlib

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

u-boot可以支持多个以太网端口吗?

我要ping通多个以太网端口。u-boot仅支持单个以太网端口有固有的限制吗?

u-boot

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

atan2对于任意相移的两个正弦曲线?

我正在尝试实现一个类似于atan2的函数,以将任意相对相移的两个输入正弦信号映射到从0到线性变化的单个输出信号2?atan2通常假设两个信号具有90度相移。

给定y0(x) = sin(x)y1 = sin(x + phase),哪里phase有一个固定的非零值,我该如何实现一种以x模数返回的方法2?

c algorithm math atan2

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