相关疑难解决方法(0)

"静态"在C中意味着什么?

static在C代码中看到了不同地方使用的单词; 这就像C#中的静态函数/类(其中实现是跨对象共享的)?

c syntax static

1062
推荐指数
15
解决办法
86万
查看次数

将struct初始化/重置为零/ null

struct x {
    char a[10];
    char b[20];
    int i;
    char *c;
    char *d[10];
};
Run Code Online (Sandbox Code Playgroud)

我正在填充此结构,然后使用值.在下一次迭代中,我想在重新开始重用之前0null之前重置所有字段.

我怎样才能做到这一点?我可以使用memset或者必须通过所有成员然后单独进行吗?

c struct initialization

86
推荐指数
6
解决办法
16万
查看次数

memset()或值初始化将结构清零?

在Win32 API编程中,通常使用struct具有多个字段的C s.通常只有其中几个具有有意义的值,而其他所有值都必须归零.这可以通过以下两种方式之一实现:

STRUCT theStruct;
memset( &theStruct, 0, sizeof( STRUCT ) );
Run Code Online (Sandbox Code Playgroud)

要么

STRUCT theStruct = {};
Run Code Online (Sandbox Code Playgroud)

第二个变体看起来更干净 - 它是一个单行,它没有任何可能输错的参数并导致错误被种植.

与第一个变体相比,它有任何缺点吗?使用哪种变体?为什么?

c c++ struct initialization visual-c++

63
推荐指数
6
解决办法
7万
查看次数

gcc会自动将静态变量初始化为零吗?

我在函数中声明了一个静态变量但未初始化.这个变量会自动初始化为零吗?

static int idx;
Run Code Online (Sandbox Code Playgroud)

c

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

gcc,未初始化的全局变量

有没有办法知道/警告全局变量是否未使用gcc初始化?

我得到了本地/原子变量"-Wuninitialized"

c gcc

7
推荐指数
2
解决办法
4721
查看次数

为什么gcc不能编译未初始化的全局const?

当我尝试使用g ++编译以下内容时:

const int zero;

int main()
{
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

我得到一个错误uninitialized const 'zero'.我认为全局变量默认初始化为0 [1]?为什么不是这种情况?
VS编译这个罚款.

[1]例如,请参阅/sf/answers/764910541/

gcc g++ global-variables

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

标签 统计

c ×5

gcc ×2

initialization ×2

struct ×2

c++ ×1

g++ ×1

global-variables ×1

static ×1

syntax ×1

visual-c++ ×1