小编ken*_*ken的帖子

你如何在struct上使用offsetof()?

我想要offsetof()参数行mystruct1.我试过了

offsetof(struct mystruct1, rec.structPtr1.u_line.line) 
Run Code Online (Sandbox Code Playgroud)

并且

offsetof(struct mystruct1, line)  
Run Code Online (Sandbox Code Playgroud)

但都不起作用.

union {
    struct mystruct1 structPtr1;
    struct mystruct2 structPtr2;
} rec;

typedef struct mystruct1 {
    union {
        struct {
            short len;
            char buf[2];
        } line;

        struct {
            short len;
        } logo;

    } u_line;
};
Run Code Online (Sandbox Code Playgroud)

c

7
推荐指数
1
解决办法
5831
查看次数

与memcpy连接

我正在尝试使用memcpy添加两个字符串.第一个memcpy包含我需要的数据.然而,第二个没有增加.知道为什么吗?

if (strlen(g->db_cmd) < MAX_DB_CMDS )
{
      memcpy(&g->db_cmd[strlen(g->db_cmd)],l->db.param_value.val,strlen(l->db.param_value.val));
      memcpy(&g->db_cmd[strlen(g->db_cmd)],l->del_const,strlen(l->del_const));
      g->cmd_ctr++;
}
Run Code Online (Sandbox Code Playgroud)

c string memcpy

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

如何在文本文件中添加新行?

我有几行代码:

strcat(myTxt,"data");
strcat(myTxt,"\n");
strcat(myTxt,"data1");
Run Code Online (Sandbox Code Playgroud)

在我已经做了字里行间strcat"\n"; 但是,当我对文本文件进行写操作时,"\n"将忽略该文本文件并将所有字符串连接起来datadata1.我该如何解决这个问题?

c

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

strcmp参数类型错误

我试图不使用isSpace函数,所以唯一想到的是strcpy但是我收到了一个错误

while ( walker > 0 &&   strcmp(a[walker - 1],space_const) )

Warning 86: argument 1 conflicts with formal definition
Run Code Online (Sandbox Code Playgroud)

有谁知道如何解决这个问题?space_constchar初始化为" "

char* strTrim(char* string)
{
 char* a= string;

 char delims[3];
 char space_const[] =" ";
 char syntax_const[]=" \t\n\v";
 size_t walker = strlen ( a );
 strcpy(delims,space_const);
 /* Trim trailing spaces */
 while ( walker > 0 &&   strcmp(a[walker - 1],space_const) )
   --walker; 

 a[walker] = '\0';

 /* Trim leading spaces */
 walker = …
Run Code Online (Sandbox Code Playgroud)

c

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

什么是我未初始化的结构值?

所以我在全球部分有两个结构

typedef struct stack_1
 {
  short ctr;
 } stack_1;

typedef struct stack_2
 {
   struct stack_1 *s1;
 } stack_2;
Run Code Online (Sandbox Code Playgroud)

然后在我的代码中

struct stack_2 *x; 
Run Code Online (Sandbox Code Playgroud)

什么是我的x初始化?? 0或空.先感谢您.

c

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

标签 统计

c ×5

memcpy ×1

string ×1