2013-05-21 90 views
-8

我知道指针是什么,但在一些编码练习中,我有一个错字,而不是int*使用*int* int是什么意思?

我明白这是错误的,但这是否意味着C语言中的某些内容(例如,语法上有效)? 它是静态语义吗? 它只是未定义?

无法解决编译器警告。

编辑:(相关的编译警告)

void input(*int ,*int); 

:10:错误:预期基本表达式之前 “INT” :10:错误:预期基本表达式之前 “INT” :10:错误:初始化表达式列表视为复合表达式

+4

请分享编译器警告。 –

+3

这将取决于上下文。发布代码。 –

+0

我相当肯定这是无效的语法。 – Joel

回答

6

不,这是一个语法错误。它不能成为乘法的一部分,因为不能有关键字名称的标识符。

,使这个C程序的有效部分,唯一的办法就是

  • 作为一个字符串字面
  • 的一部分作为多字节字符常量
  • 作为注释的一部分的一部分
  • int是一个扩展到其他东西,使其有效的宏
  • #ifdef'删除的代码段
  • 别的东西我忘了
+1

你可以把它变成未使用的宏的一部分:'#define UNUSED39898439854389 * int' – chris

+0

@Chris +1 Righto!这个很有趣。 – Jens

相关问题