我在使用C90编译器时遇到了麻烦,因为它在long long int中显示错误。我想声明一个long long int类型数组。
有没有其他方法可以用C90编译它?
这是我的代码:
#include<stdio.h>
int main()
{
int i,n,j,X;
long long int N[60];
N[0]=0;
N[1]=1;
for(i=2;i<61;i++)
{
N[i]=N[i-1]+N[i-2];
}
scanf("%d",n);
for(j=0;j<n;j++)
{
scanf("%d",X);
printf("Fib(%d) = %lld",X,N[X]);
}
}
答案 0 :(得分:1)
除非你能找到一些非标准的预处理器扩展,否则你不能在C90中使用long long
。
虽然如果幸运的话,编译器会实现stdint.h
,您可以在其中找到int64_t
。像Visual Studio 2017这样的一些C90编译器就是这样做的。
鉴于可以免费获得优秀的C99或C11编译器,对于许多不同的系统,应该没有理由坚持使用C90。