Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 当声明不在函数的开头时,VS2010可以编译吗?_C_Visual Studio 2010 - Fatal编程技术网

C 当声明不在函数的开头时,VS2010可以编译吗?

C 当声明不在函数的开头时,VS2010可以编译吗?,c,visual-studio-2010,C,Visual Studio 2010,新手问题 我正在尝试使用VS2010进行编译 在C语言中,我想您通常必须在函数的开头声明变量,如下所示: void cork_hash_table_clear(struct cork_hash_table *table) { DEBUG("(clear) Removing all entries"); size_t i; // <--- fails to compile unless moved before DEBUG. ... void 软木散列表清除

新手问题

我正在尝试使用VS2010进行编译

在C语言中,我想您通常必须在函数的开头声明变量,如下所示:

void
cork_hash_table_clear(struct cork_hash_table *table)
{

    DEBUG("(clear) Removing all entries");

    size_t  i;  // <--- fails to compile unless moved before DEBUG.
    ...
void
软木散列表清除(结构软木散列表*表)
{
调试(“清除)删除所有条目”);

size_t i;//函数中的混合声明和语句在年被引入到C中;不幸的是,VS决定不再遵循超过1990年版本的标准

<>你可以编译代码为C++,虽然这可能会很好地打破,因为C不是C++的严格子集。如果萨特与C++不兼容,那么Habor使用英特尔CC或GCC。
这个问题有一些有趣的内容,尽管它也涵盖了C++(VS在保持速度方面更好)。

你可以编译为C++思想No,这是VisualStudio只支持有限数量的C99特性。