小编Job*_*lle的帖子

通过使用指向第一个参数的指针迭代函数的参数

我想知道以下C代码是否符合C99和/或C11标准:

void foo(int bar0, int bar1, int bar2) {
    int *bars = &bar0;

    printf("0: %d\n1: %d\n2: %d\n", bars[0], bars[1], bars[2]);
}

int main(int argc, char **argv) {
    foo(8, 32, 4);

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

在使用visual studio 2013并打印时,此代码段按预期编译和运行:

0:8
1:32
2:4

c pointers c99 parameter-passing c11

6
推荐指数
3
解决办法
114
查看次数

使用原始输入在Windows上的游戏手柄力反馈(振动)

我目前正在C中编写一个包含游戏手柄支持的跨平台库.Windows上的游戏手柄通信由原始输入和xinput处理,具体取决于特定的游戏手柄.

虽然xinput有助于在xbox360控制器上进行力反馈,但我还没有找到使用原始输入执行此操作的方法.我有一些可以提供力反馈的游戏手柄,但我无法通过原始输入找到一种方法.有没有办法做到这一点?

我不喜欢使用directinput api,因为微软已经弃用它并且不鼓励它.

编辑:

由于我已经在很大程度上实现了游戏手柄,也许我可以稍微缩小这个问题.我怀疑通过读取HIDP_CAPS结构的NumberOutputValueCaps可以找到游戏手柄中的隆隆马达数量.这为我的所有测试游戏手柄提供了正确的结果.

我正在使用funtcion HidP_GetUsageValue来读取轴值,这很好.现在我怀疑调用HidP_SetUsageValue应该允许我改变这个输出值,打开隆隆电机.但是,调用此函数失败.该功能是否能够接入隆隆电机?

c input vibration gamepad

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

标签 统计

c ×2

c11 ×1

c99 ×1

gamepad ×1

input ×1

parameter-passing ×1

pointers ×1

vibration ×1