网站建设资讯

NEWS

网站建设资讯

c语言调用函数出错 c语言调用函数出错怎么解决

c语言程序调用函数不成功,出现identified

编译了一下你的代码,报告4个错误,主要是两个子函数没有在主函数调用前声明,

成都创新互联公司主营东山网站建设的网络公司,主营网站建设方案,成都App定制开发,东山h5成都小程序开发搭建,东山网站营销推广欢迎东山等地区企业咨询

调整后显示函数调用参数不匹配,又修改调用参数,改后代码与相应注释如下:

#includestdio.h

#includestring.h

#define ERROR 0

//子函数的声明,以避开文中编译遇到的redefinition;错误

void Nizhi(char *a);

//子函数的声明,同上

int Index(char *a,char *b,int n1,int n2);

int main()

{

int m,n,p,q,len1,len2;

char A[100];

char B[100];

while(gets(A))

{

gets(B);//输入字符串A,B//

len1=strlen(A);//得到两个字符串的长度//

len2=strlen(B);

p=Index(A,B,len1,len2);//查找逆置前字符串在A中出现次数//

Nizhi(B);

//q=Index(A[len1-1],B[len2-1],len1,len2);编译报告传入参数与函数定义形参不匹配,故改为地址

q=Index(A[len1-1],B[len2-1],len1,len2);//查找逆置后字符串在A中出现次数//

p+=q;

printf("%d\n",p);

}

return 0;

}

void Nizhi(char *a)

{

int i,j;

j=strlen(a);

char m;

for(i=0;ij/2;i++)

{

m=a[i];

a[i]=a[j-i-1];

a[j-i-1]=m;

}

}

int Index(char *a,char *b,int n1,int n2)

{

int i,j,k;

int num=0;

for(i=0;in1-n2+1;i++)

{

for(j=0,k=i;b[j]==a[k]; k++,j++)

{

if(j==n2)

num++;

}

}

return num;

}

供参考。

注意,改后虽编译通过,未验证整个程序逻辑的正确性。

C语言调用C++函数出错

哈哈,我看出来了,你是用vc编译的吧,看dos.h头文件,这是tc编译器的头文件,支持的暂停为delay()函数,如果用vc编译,那么就是用的windows环境下的32位编程,所以就应该加入windows.h这个头文件,告诉vc编译器这个名字空间,错误提示是由于你的sleep()函数中s要大写,改成大写就能编译通过了。

希望对你有所帮助。

c语言函数调用的程序运行出来总是出错,,哪位大神帮我看看哪里出问题了

#includestdio.h

int func1(int m,int n)

{

int a;

while(n!=0)

{

a=m%n;

m=n;

n=a;

}

return(m); //这里应该返回m,如果返回a就一直是0

}

int func2(int x,int y)

{

return(x*y/func1(x,y));

}

int main()

{

int j,k;

printf("请输入两个整数:");

scanf("%d%d",j,k);

printf("两个数的最大公约数为%d,两个数的最小公倍数为%d",func1(j,k),func2(j,k));

return 0;

}

c语言 调用函数例子,为什么会报错啊?

首先,你定义的那些函数,最好改为void printst(void),下面那几个也一样,因为这样很容易让人知道你写的函数是什么类型。另外,自己写函数,有 申明过程,就是说,因为你的main在你写的函数的前面,编译器无法知道你的main函数里printst()这些是什么意思,所以,在main前面你要申明,即加上void printst(void);意思是告诉编译器,这个函数已经有了。。。你上面写了3个,我这里只说了一个,每个都要那样。。。

C语言中的函数调用问题 ,出现错误 error C2660: 'prime' : function does not take 1 parameters

#include stdio.h

int prime(int n) //一般声明在主函数前,而且有参数的要写好参数

void main()

{

int n;

printf("\ninput an integer:");

scanf("%d",n);

if(prime(n))

printf("\n %d is a prime.\n",n);

else

printf("\n %d is not a prime. \n",n);

}

int prime(int n) //要和声明的函数格式一致

{

int flag=1,i;

for(i=2;in/2 flag==1;i++)

{

if(n%i==0)

flag=0;

}

return(flag);

}


名称栏目:c语言调用函数出错 c语言调用函数出错怎么解决
文章地址:http://cdweb.net/article/hgigps.html