亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

Chinaunix

標(biāo)題: 求教如何處理c程序中的"重定義類型不匹配"的錯(cuò)誤? [打印本頁]

作者: chinazhaok    時(shí)間: 2004-02-13 22:52
標(biāo)題: 求教如何處理c程序中的"重定義類型不匹配"的錯(cuò)誤?
我是C語言菜鳥,寫一個(gè)小程序求最大公約數(shù)的.
  
為了能夠處理一些比較大的數(shù),我用長整型來定義變量的.
  
結(jié)果出現(xiàn)了 Type mismatch in redeclaration of 'gcd' 錯(cuò)誤,
  
也就是我的求最大公約數(shù)那個(gè)函數(shù)出現(xiàn)了"重定義類型不匹配"的錯(cuò)誤
  
(gcd是我自己寫的一個(gè)函數(shù)).也就是說,我的程序再用整型定義
  
變量時(shí),是沒有問題的.(當(dāng)然是輸入的值不要超過turboc2.0中
  
規(guī)定的整型變量范圍的最大值).附錄程序如下,請(qǐng)大俠幫手:
  
/* This program is designed for computing great common divisor of
two positive long integers */
/* Euclidean algorithm */
#include <math.h>;
void main()
{
/*input a & b; */
long int a, b;
long int temp;
long int rm;
printf("lease input a positive long integer:\n";
scanf("%d",&a);
printf("lease input the second long integer:\n";
scanf("%d",&b);
/* compare a & b; */
if(a<b)
{
  temp=b;
  b=a;
  a=temp;
}
rm=gcd(a,b);
printf("The great common divisor of a and b is: %d\n", rm);
}
long int gcd(long int a, long int b)
{
long int r0,r1,r;
long int q;
r0=a;
r1=b;
r=b;
while(r>;0)
{
  q=r0/r1;
  r=r0-q*r1;
  r0=r1;
  r1=r;
}
return (r0);
}
作者: lenovo    時(shí)間: 2004-02-13 22:59
標(biāo)題: 求教如何處理c程序中的"重定義類型不匹配"的錯(cuò)誤?
scanf("%d",&a);
把%d改成%ld,其他的地方也一樣。
還有用long定義就可以了。
作者: yejin13    時(shí)間: 2004-02-15 16:36
標(biāo)題: 求教如何處理c程序中的"重定義類型不匹配"的錯(cuò)誤?
你必須在main函數(shù)前聲明gcd這個(gè)函數(shù)!

由于你沒有聲明這個(gè)函數(shù),程序在編譯時(shí),他默認(rèn)gcd函數(shù)返回類型為int.
但你在底下的函數(shù)類型為long int,故有redeclaration of 'gcd'
作者: chinazhaok    時(shí)間: 2004-02-16 22:09
標(biāo)題: 求教如何處理c程序中的"重定義類型不匹配"的錯(cuò)誤?
謝謝,呵呵.我知道了.現(xiàn)在已經(jīng)改好了.這兒真是一個(gè)好地方.
作者: lenovo    時(shí)間: 2004-02-16 22:24
標(biāo)題: 求教如何處理c程序中的"重定義類型不匹配"的錯(cuò)誤?
[quote]原帖由 "chinazhaok"]謝謝,呵呵.我知道了.現(xiàn)在已經(jīng)改好了.這兒真是一個(gè)好地方.[/quote 發(fā)表:

歡迎常來哦!




歡迎光臨 Chinaunix (http://72891.cn/) Powered by Discuz! X3.2