相关疑难解决方法(0)

为什么sizeof被认为是运营商?

为什么被sizeof认为是操作员而不是功能?

有资格成为运营商需要什么财产?

c operators sizeof

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

为什么(以及何时)我需要在sizeof之后使用括号?

以下无法编译:

typedef int arr[10];
int main(void) {
    return sizeof arr;
}

sizeof.c:3: error: expected expression before ‘arr’
Run Code Online (Sandbox Code Playgroud)

但如果我改成它

sizeof(arr);
Run Code Online (Sandbox Code Playgroud)

一切都好.为什么?

c sizeof

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

正确的size_t:%zu或%Iu的printf格式说明符?

我想在C++中使用Microsoft Visual Studio 2010 打印出size_t变量的值printf(我想使用printf而不是<<在这段特定的代码中,所以请不要回答告诉我应该使用它<<).

根据帖子

平台无关size_t c中的格式说明符?

正确的平台无关方式是使用%zu,但这似乎在Visual Studio中不起作用.Visual Studio文档

http://msdn.microsoft.com/en-us/library/vstudio/tcxf1dw6.aspx

告诉我,我必须使用%Iu(使用大写i,而不是小写l).

微软是否不遵守这些标准?或者自C99以来标准是否已更改?或者C和C++之间的标准是不同的(这对我来说似乎很奇怪)?

c c++ printf visual-studio-2010 format-specifiers

41
推荐指数
4
解决办法
5万
查看次数