【问题标题】:Meaning of asterisk in these examples [duplicate]这些示例中星号的含义[重复]
【发布时间】:2021-01-06 16:31:44
【问题描述】:

变量后面的星号是什么意思,例如在函数 _tempnam 中? :

_CRTIMP char* __cdecl __MINGW_NOTHROW _tempnam (const char*, const char*);

我总是在函数参数中看到这一点。

【问题讨论】:

  • 您知道包含现有类型变量地址的指针的概念吗?如果不是,答案可能会归结为“阅读”。如果是,我真的不明白你的问题是什么。
  • @jcc3dx 提供的代码中没有变量。
  • 这可能只是一个微妙的语言点,但这不是“变量后的星号”。它是“类型后的星号”。在诸如char *a, *b; 之类的变量定义中,您会说星号位于变量名之前。
  • 这是最基本的C知识。我不确定这是否适合问这个问题。

标签: c


【解决方案1】:

_tempnam 是一个函数。
该函数有两个参数。

第一个参数是一个指向char的指针。
该指针引用的任何char 都不能被写入(它是const)。

第二个参数是一个指向char的指针。
该指针引用的任何char 都不能被写入(它是const)。

函数的返回值是一个指向char的指针。

声明的其余部分表明该函数是一个 C-Runtime-Implementation (CRTIMP),使用 C 调用约定进行调用,并且不会引发任何异常。

【讨论】:

  • 非常感谢
【解决方案2】:

这些是pointers,如果你想使用这种语言,你应该知道的一个核心 C 概念。一些信息here

【讨论】:

  • 清晰、简短、真实且仍然友善,并且通过适当的链接很有帮助。我想不出这样的答案。干得好。
猜你喜欢
  • 1970-01-01
  • 2019-02-05
  • 2017-03-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-16
  • 2012-02-08
相关资源
最近更新 更多