小编tar*_*yte的帖子

为什么要使用mmap而不是fread?

为什么/何时使用更好mmap(),而不是fread()从块中的文件流转换为字节数组?

uint8_t my_buffer[MY_BUFFER_SIZE];
size_t bytes_read;
bytes_read = fread(my_buffer, 1, sizeof(my_buffer), input_file);
if (MY_BUFFER_SIZE != bytes_read) {
    fprintf(stderr, "File read failed: %s\n", filepath);
    exit(1);
}
Run Code Online (Sandbox Code Playgroud)

c streaming mmap file

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

python是否有EXIT_SUCCESS常量?

0将在python脚本中返回所有地方但更喜欢更具语义性的东西,更具可读性.我不喜欢这个神奇的数字.在python中是否有一个类似于如何C返回EXIT_SUCCESS而不仅仅是0 的想法?

我无法在这里找到它:https: //docs.python.org/3.5/library/errno.html

c python

6
推荐指数
2
解决办法
785
查看次数

为什么 makefile 中需要链接 math.h 而不是 string.h?

我已经<string.h>在所有地方都包含了,当我去包含时,我<math.h>发现pow()我需要修改我的 makefile 才能访问pow.

如果我需要包含它们,我也不知道在哪里可以查找更多库。我随机读到该-lm标志(或至少是m它的标志)表示标准 c 数学库,但我不知道其他标准 c 库可能被称为什么。

我刚刚查看了一下,user/local/lib我看到的只是:

$ cd /usr/local/lib
$ ls -al
drwxr-xr-x  3 root root  4096 Apr 25  2012 .
drwxr-xr-x 10 root root  4096 Apr 25  2012 ..
drwxrwsr-x  4 root staff 4096 Oct 14 10:19 python2.7
Run Code Online (Sandbox Code Playgroud)

c linker makefile

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

在编译时计算宏中的数学吗?

例如,MIN_N_THINGIES下面编译为2?或者我每次在代码中使用宏时都会重新计算除法(例如,每次迭代重新计算for循环的结束条件).

#define MAX_N_THINGIES  (10)
#define MIN_N_THINGIES  ((MAX_N_THINGIES) / 5)

uint8_t i;
for (i = 0; i < MIN_N_THINGIES; i++) {
  printf("hi");
}
Run Code Online (Sandbox Code Playgroud)

这个问题源于我仍在学习构建过程的事实.谢谢!

c macros build-process

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

如何清除chrome应用程序的错误列表?

首次介绍 chrome 应用程序。我正在尝试减少某种工作流程。我已启用复选框以收集错误,但似乎无法在应用程序执行之间清除它们。我认为关闭他们重新启动的应用程序就可以了。现在唯一有效的是删除应用程序然后重新加载包。

在此处输入图片说明

google-chrome-app

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

如何有效地将内存块与单个字节进行比较?

0xFF我正在尝试查看一个结构是否按照结构的大小返回。

memcmp似乎是明显的起点,但我必须分配第二个内存块,用0xFF's 填充它。这看起来像是一种浪费。

是否存在为此的标准函数?或者我应该只是通过 for 循环进行平底船和迭代?

c memcmp

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

如何在linux中的python进程之间锁定目录?

我有两个(或更多)python进程在运行,并且想要创建一个类似于共享资源的排除互斥锁的概念.在这种情况下,"共享资源"是一个目录.我最容易/标准地/等等如何实现互斥锁?.lock每个进程同意检查的隐藏文件,如果存在,则将其PID附加为新行,然后在有权访问该文件时弹出其PID?

我基本上只是想清除一个目录,并确保在我清除它时没有其他进程尝试读取或写入它.

是否有标准的linux方式这样做?也许我可以用python的shell行执行某些操作?

python linux python-3.4

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

字节编译后删除python源文件?

我可以在字节编译后删除 python 源文件 (*.py) 吗?我知道这并不能提供安全性,而且 .pyc/o 文件可以很容易地进行逆向工程;我只想在发布时发布更少的文件。

# Clean the python cache
find ./mypythonstuffs -type f -name "*.py[co]" -delete
find ./mypythonstuffs -type d -name "__pycache__" -delete

# Remove test directories
find ./mypythonstuffs -name "test" -type d -exec rm -r "{}" \;

# Byte-compile, ignoring .git subdirectories
python3 -O -m compileall -f -x r'[/\\][.]git' ./mypythonstuffs

# Remove now-unnecessary??? python source files
find ./mypythonstuffs -type f -name "*.py" -delete
Run Code Online (Sandbox Code Playgroud)

python bytecode

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

__atomic_load_n和__atomic_load之间的区别

我试图学习有关C11原子的更多信息,但看不到为什么要使用__atomic_load_nover __atomic_load。该文档仅声明一个是通用的,但用法看起来是相同的:

内置函数:类型__atomic_load_n(类型* ptr,int内存)此内置函数实现原子加载操作。它返回* ptr的内容。

有效的内存顺序变量是__ATOMIC_RELAXED,__ATOMIC_SEQ_CST,__ATOMIC_ACQUIRE和__ATOMIC_CONSUME。

内置函数:void __atomic_load(类型* ptr,类型* ret,int内存)这是原子负载的通用版本。它在* ret中返回* ptr的内容。

https://gcc.gnu.org/onlinedocs/gcc/_005f_005fatomic-Builtins.html

c atomic c11

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

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

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

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
查看次数