Ideone 上的运行时错误,但在我的电脑上运行正常
Runtime error on Ideone but works fine on my computer
我正在编写一个程序,用 C 语言找出两个排序数组的交集。当我在我的机器上用 GCC 编译它并且 运行 它时,代码工作正常,但是在 ideone.com.
上给出了 运行time 错误
这是下面代码的 Live link:
#include <stdio.h>
#include <stdlib.h>
int main(){
int arr1[] = {1,3,4,5,7,11,123};
int arr2[] = {2,3,5,6,7,8,9,11,23,123};
int i, j=0, k=0, l1, l2;
l1 = sizeof(arr1)/ sizeof(arr1[0]);
l2 = sizeof(arr2)/ sizeof(arr2[0]);
while(j<l1 && k<l2){
if(arr1[j]<arr2[k]){
j++;
}
else if(arr1[j]>arr2[k]){
k++;
}
else{
printf("%d\t", arr1[j]);
j++; k++;
}
}
}
我不是很确定,因为你的代码看起来不错。
但是,在main()
末尾加一个return 0;
就成功了。也许,在线编译器本身的约束。
另外,把int main()
改成了int main(void)
,不过这里不重要
我正在编写一个程序,用 C 语言找出两个排序数组的交集。当我在我的机器上用 GCC 编译它并且 运行 它时,代码工作正常,但是在 ideone.com.
上给出了 运行time 错误这是下面代码的 Live link:
#include <stdio.h>
#include <stdlib.h>
int main(){
int arr1[] = {1,3,4,5,7,11,123};
int arr2[] = {2,3,5,6,7,8,9,11,23,123};
int i, j=0, k=0, l1, l2;
l1 = sizeof(arr1)/ sizeof(arr1[0]);
l2 = sizeof(arr2)/ sizeof(arr2[0]);
while(j<l1 && k<l2){
if(arr1[j]<arr2[k]){
j++;
}
else if(arr1[j]>arr2[k]){
k++;
}
else{
printf("%d\t", arr1[j]);
j++; k++;
}
}
}
我不是很确定,因为你的代码看起来不错。
但是,在main()
末尾加一个return 0;
就成功了。也许,在线编译器本身的约束。
另外,把int main()
改成了int main(void)
,不过这里不重要