从 int 到 long int 的类型转换
Typecasting from int to long int
最近搜索了int
、long int
、long
、...等的区别。我从 here 那里得到了答案。我发现 long
和 long int
是相同的。所以声明
c = a *long(b);
和
c = a * long int (b)
程序中应该相同
int main()
{
int a = 10, b = 20;
long int c;
c = a *long(b);
cout << c;
return 0;
}
但是第二个语句显示错误
[错误] 在 'long'
之前需要主表达式
所以我只想知道,如果long
和long int
是一样的,那么为什么上面两个语句会出错呢?
仅仅因为它们是同一类型并不意味着您可以在源代码中完全交换字符。
当 T
中有 space 时,语法会被 T()
转换混淆。
改写c = a * (long int)b
。
为此使用括号。
例如
c = a * (long int) (b)
由于类型转换数据类型有多个单词。
最近搜索了int
、long int
、long
、...等的区别。我从 here 那里得到了答案。我发现 long
和 long int
是相同的。所以声明
c = a *long(b);
和
c = a * long int (b)
程序中应该相同
int main()
{
int a = 10, b = 20;
long int c;
c = a *long(b);
cout << c;
return 0;
}
但是第二个语句显示错误
[错误] 在 'long'
之前需要主表达式所以我只想知道,如果long
和long int
是一样的,那么为什么上面两个语句会出错呢?
仅仅因为它们是同一类型并不意味着您可以在源代码中完全交换字符。
当 T
中有 space 时,语法会被 T()
转换混淆。
改写c = a * (long int)b
。
为此使用括号。 例如
c = a * (long int) (b)
由于类型转换数据类型有多个单词。