小编Jac*_*cko的帖子

将受限指针分配给另一个指针,并使用第二个指针修改值是否合法?

以下方法是否尊重“限制”合同?

void fun(int* restrict foo) {
     int* bar = foo + 32;
     for (int i = 0; i < 32; ++i)
         *bar = 0;
}
Run Code Online (Sandbox Code Playgroud)

我的猜测是否定的,但我需要澄清一下。

c c99 restrict-qualifier

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

需要在github操作工作流程中将反斜杠转换为正斜杠

在我的 actions yml 文件中,我设置了一个环境变量,指向我的 ctest 输入图像文件的根目录(我运行 ctest 来测试图像编解码器解压缩器,这些是输入图像)。

env:
  DATA_ROOT: ${{github.workspace}}/data
Run Code Online (Sandbox Code Playgroud)

在 Windows 上,这给了我类似的东西c:\Foo\Bar/data,我想将其转换为 c:/Foo/Bar/data

我可以在 PowerShell 中进行转换:

$temp = ${DATA_ROOT}
$pattern = '[\\]'
$temp = $temp -replace $pattern, '/'
Run Code Online (Sandbox Code Playgroud)

但我该如何重置${DATA_ROOT}为 equal $temp

我希望后续步骤使用新的 ${DATA_ROOT} 。

windows powershell path cmake github-actions

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

Github 操作:使用 PowerShell 为 Windows 构建设置环境变量

我定义GENERATOR_PLATFORM为一个空的环境变量,然后我想将它设置为我的 Windows 版本。但是,变量永远不会被设置:

env:
  GENERATOR_PLATFORM:

 steps:
    - name: windows-dependencies
      if: startsWith(matrix.os, 'windows')
      run: |
         $generator= "-DCMAKE_GENERATOR_PLATFORM=x64"
        echo "Generator: ${generator}"
        echo "GENERATOR_PLATFORM=$generator" >> $GITHUB_ENV

   - name: Configure CMake
      shell: bash
      working-directory: ${{github.workspace}}/build
      run: cmake $GITHUB_WORKSPACE $GENERATOR_PLATFORM
Run Code Online (Sandbox Code Playgroud)

powershell environment-variables github-actions

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

如何实现iphone日历日视图

有谁知道如何实现类似于iPhone日历日视图的视图?

iphone calendar view

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

在Windows XP中是文件创建原子?

嗨,我想在windows xp上使用文件系统作为两个进程之间的锁.即,给定文件名"file_lock",进程通过尝试创建文件"file_lock"(如果尚未存在)来获取锁.如果已经存在,则无法获得锁定.

FileStream fs=new FileStream("c:\\file_lock, FileMode.CreateNew);
Run Code Online (Sandbox Code Playgroud)

这会有用吗?如果文件不存在原子文件,是否创建文件?

谢谢!

c# windows windows-xp file atomic

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

git:需要解析提交消息以查找模式并将其存储在列表中

我所有的git commit消息都以

  refs #SOME_NUMBER
Run Code Online (Sandbox Code Playgroud)

其中SOME_NUMBER是从1开始的数字。我想解析我的工作分支上的所有提交消息,将所有SOME_NUMBER存储在列表中,删除重复项,然后保存到文件中。不太确定从哪里开始。

git grep commit-message

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

需要将C++模板转换为C99代码

我正在将CUDA代码移植到OpenCL - CUDA允许C++构造像模板,而OpenCL严格来说是C99.那么,将templatest移植到C的最无痛的方法是什么?我想过为模板参数使用函数指针.

templates cuda opencl

3
推荐指数
2
解决办法
370
查看次数

哪些因素决定使用 g++ 构建的二进制文件需要哪个版本的 glibc?

我管理一个复杂的C++ 项目

我收到现场报告称,由于 glibc 版本不匹配,在一个系统上构建的二进制文件将无法在另一个系统上运行。

我只是想验证一下:二进制文件所需的glibc版本是否完全取决于使用哪个版本的g++来编译它?

在本例中,二进制文件是使用 g++ 11 构建的,并在另一个未安装 g++ 11 的系统上运行。

c++ glibc g++

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

如何将-j选项添加到我的ctest cmake文件中?

我想在运行时运行并行作业ctest.我尝试过设置

set(CTEST_PARALLEL_LEVEL 8)
Run Code Online (Sandbox Code Playgroud)

CTestCustom.cmake.in
Run Code Online (Sandbox Code Playgroud)

但是在重新生成构建文件后,这并没有改变命令行选项.

我在窗户上,使用视觉工作室.

cmake ctest

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

UBSAN报道:-875 << 7为未定义的行为

简单的代码片段:

#define FOO 7
int bar = -875;
bar <<= FOO;
Run Code Online (Sandbox Code Playgroud)

这被UBSAN报告为UB.

我的理解是,这-875 << 7是公正的-(875<<7) ,没有溢出.

那么,这里有一个真正的问题吗?

c bit-manipulation undefined-behavior ubsan

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