小编ryy*_*ker的帖子

如何将表中的整行作为链接点击?

我正在使用Bootstrap,以下不起作用:

<tbody>
    <a href="#">
        <tr>
            <td>Blah Blah</td>
            <td>1234567</td>
            <td>£158,000</td>
        </tr>
    </a>
</tbody>
Run Code Online (Sandbox Code Playgroud)

html html-table bootstrap-4

402
推荐指数
15
解决办法
54万
查看次数

C中止陷阱6错误

我有这个代码:

void drawInitialNim(int num1, int num2, int num3)
{
    int board[2][50]; //make an array with 3 columns
    int i; // i, j, k are loop counters
    int j;
    int k;

    for(i=0;i<num1+1;i++)      //fill the array with rocks, or 'O'
        board[0][i] = 'O';     //for example, if num1 is 5, fill the first row with 5 rocks
    for (i=0; i<num2+1; i++)
        board[1][i] = 'O';
    for (i=0; i<num3+1; i++)
        board[2][i] = 'O';

    for (j=0; j<2;j++) {       //print the array
      for (k=0; k<50;k++) {
         printf("%d",board[j][k]); …
Run Code Online (Sandbox Code Playgroud)

c arrays loops abort

19
推荐指数
2
解决办法
10万
查看次数

C语言中的线程和线程安全

当存在需要在多个线程进程之间共享的公共全局数据集时,我通常使用线程令牌来保护共享资源:

在此输入图像描述

编辑 - 2015年7月22日(根据Jens评论将原子作为一种可行的选择)

我的[第一个]问题是,在C中,如果我以这样的方式编写我的例程,以保证每个线程访问一个,并且只访问一个数组的一个元素:

在此输入图像描述

有没有理由认为异步和同时访问同一个不受保护的数组的不同索引(如图所示)会有问题?

第二个问题:假设一个可以作为原子实体访问的对象,即使存在异步中断( C99 - 7.14信号处理),使用原子是一种有效的方法来保护线程,保护其他不受保护的变量吗?

在此输入图像描述

编辑(澄清以解决评论中的问题):
- 此应用程序的
细节:- 目标操作系统:Windows 7/8/10
- 编译器:符合C99(不能使用C11,包括_ Atomic()类型说明符 )
- H/W:Intel i7系列

c windows multithreading atomic c99

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

struct 和 struct 成员的数组元素

我想问一下 C 中的 struct 声明。例如,

struct Person
{
    char name[50];
    int citNo;
    float salary;
} prsn[20];
Run Code Online (Sandbox Code Playgroud)

有什么作用[20]?这是什么意思?是将名称限制为 20(从 50)还是将prsnfrom限制prsn[1]prsn[20]

如果我写这样的代码:

struct Person
{
    char name[50];
    int citNo;
    float salary;
};
struct Person prsn[20];
Run Code Online (Sandbox Code Playgroud)

它做同样的事情吗?

c struct

8
推荐指数
2
解决办法
564
查看次数

在 VS Code 中显示特殊字符

我的 VS Code 有问题。当尝试修改包含特殊字符(如"\xc3\xa1"、等)"\xc3\xb1"的文件时"\xc3\xb3",特殊字符将替换为问号。(见下图。)

\n

不过,这可以从 Visual Studio Code 的后面轻松解决,将语言类型更改为“Windows 1252”,因为起初它对我有用。但现在,即使我把它改成那种语言,这些迹象仍然存在。

\n

VSCode 中的文本屏幕截图显示非 ASCII 字符的错误显示

\n

visual-studio-code

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

有没有办法修改此C++结构分配块以直接C工作

以下代码驻留在通过IrDA套接字连接枚举时将发出deviceId(LXdeviceInfo)的设备中.这只是解释为什么我希望保持数据类型尽可能相似,但能够使用ansi C进行编译

使用#hlude of windows.h和af_irda.h,下面的代码在C++编译器中编译时没有错误,但在结构赋值之下的C编译器中断(请参见此处的ERROR).理想情况下,我想将struct成员'ID'初始化为一个字符数组,同时保持它的类型,就像在原始代码中一样,这样我就可以测试LXdeviceInfo的值,就像从调用时查询它一样.来自PC插座连接的设备.

有没有办法修改此赋值块以直接在C中工作?

#include <windows.h>
#include <af_irda.h>

#define IR_HINT_COMPUTER  0x04
#define IR_HINT_EXT       0x80
#define IR_HINT_OBEX      0x20
#define IR_HINT_IRCOMM    0x04
#define IR_CHAR_ASCII       0
#define PROD_FAMILY_NAME ("product name goes here")

#define uint8_t unsigned char

const struct {
    uint8_t hint1;
    uint8_t hint2;
    uint8_t charset;
    uint8_t ID[sizeof(PROD_FAMILY_NAME)];
} devInfoStorage = 
{
    IR_HINT_COMPUTER | IR_HINT_EXT,   // hint1
    IR_HINT_OBEX | IR_HINT_IRCOMM,    // hint2
    IR_CHAR_ASCII,                    // charset
    PROD_FAMILY_NAME                  // Prod ID string
}; // ERROR here: Innvalid initialization type: found 'pointer to …
Run Code Online (Sandbox Code Playgroud)

c c++

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

在函数中使用struct的不同成员的最有效方法?

我正在编写一个非常有限的资源嵌入式处理器.我有一个捕获时间序列事件的结构,我想对不同类型的不同值使用相同的图形函数.像(非常剥离;不要冒出未初始化的值等):

#define GRAPH_ONE 1
#define GRAPH_TWO 2

struct _event_t {
  unsigned long timestamp;
  int sensorOne;
  float sensorTwo;
}

typedef struct _event_t event_t;

event_t[10] MyEvents;

void GraphSensor(byte graphType) {
    for (unsigned int i = 0; i < 9; i++) {
       // Get minimum value from series
       if (MyEvents[i].?????) ...
    }
}
Run Code Online (Sandbox Code Playgroud)

如何让我的函数对结构的不同成员进行操作?我可以看到大量的switch (graphType)陈述,但这非常难看.可能很容易有8或10个结构成员.我可以将所有这些移动到一个单独的函数并使每一位数据访问都调用该函数,总是返回一个浮点数(对于我的图表应该没问题).最后我可以转换为C++类,这会打开其他方法.

没有人觉得对.有更好的方法,最好是非常轻便的方法吗?

c struct

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

c类型等价的编译器

在C语言中,如果我们有:

typedef int a[100];
typedef int b[200];
Run Code Online (Sandbox Code Playgroud)

那么类型a和b是等价的吗?据我所知,C使用名称等价,但我很困惑.

c

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

c stdout到stdin实时

我制作了两个程序,其中一个名为generator,每秒打印一些文本

int main(int argc, char** argv) {

    for(int i = 0; i < 10 ; i++) {
         printf("something\n");
         sleep(1);
    }

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

然后有一个第二个程序现在称它为消费者,它应该从一个标准输入中读取一些其他文本并重新打印它.让它看起来像这样:

 int main(int argc, char** argv) {


   char line[BUFSIZ];

   while(scanf("%s",line) != -1){
       printf("you entered %s \n",line);
   }

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

当我编译它们并尝试只运行像./generator这样的生成器时,它按预期工作.每一秒都有东西打印到控制台.但是当我尝试像./generator一样运行它们时 ./consumer它没有像我预期的那样工作.我等了10秒,然后得到了10行 想要打印的东西"你输入的东西"每一秒.

你能解释一下为什么会这样,甚至更好地告诉我如何实现预期的行为?

c linux io pipe

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

将数字四舍五入至最接近的0.05,以0.025或0.075结尾

A = [0.123 0.234 0.562 0.665 ]
B = [0.125 0.225 0.575 0.675]
C = [-43.975 -43.925 -43.875 -43.825 -43.775 -43.725 -43.675]
Run Code Online (Sandbox Code Playgroud)

我想使数组A看起来像数组B。我正在使用的卫星数据具有0.05度的分辨率,因此像数组C一样对它的经度和纬度值进行编号。因此,数字以0.05的增量递增,但以25结束或数组C中的75。我有数组A中的数字,需要与卫星数据的网格匹配。我需要像数组A中那样四舍五入或变换数字,使其看起来像数组B中的数字。

我已经尝试使用round和使用,math.ceil但都无法完全正常工作。

arrays algorithm rounding match ceil

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