【问题标题】:Different cast in C [closed]C中的不同演员表[关闭]
【发布时间】:2021-01-22 03:09:30
【问题描述】:

你能解释一下“正常的 c cast”和“function like c cast”之间的区别吗?它们如何实施?如果我没记错的话,正常的转换,例如在 char 和 int 之间是这样的:

char a;
int b = 1;

a = (int)b;

谢谢

【问题讨论】:

  • 我可以知道你为什么要做演员吗?
  • 您无法将int值写入char a。您的演员阵容毫无意义。
  • C 中没有“类似 c 类型转换的函数”。您将 C 编程语言与 C++ 混淆了。

标签: c casting type-conversion codeblocks


【解决方案1】:

C 没有强制转换的功能,但 C++ 有。

您在此处展示的“C 样式转换”是程序员通过设置特定类型表达式的数据类型来执行的显式类型转换,称为显式类型转换。显式类型转换也称为类型转换。

c 中的类型转换以下列形式完成:

(int)expression;

您可以使用任何有效的 c 数据类型对其进行转换,表达式可以是常量、变量或表达式。 它还创建一个临时右值,这意味着在左值上使用这种类型的强制转换可能会导致编译器警告/错误,即:需要左值作为赋值的左操作数

【讨论】:

  • 哦,对不起,刚醒,让我尴尬。
  • 非常感谢,所以说函数式强制转换没有意义
猜你喜欢
  • 2019-03-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-01-16
  • 2016-01-03
  • 1970-01-01
相关资源
最近更新 更多