c语言中自定义函数warning不知道什么意思 在线等
warning:passingargument1of'fun1'makespointerfromintegerwithoutacast[enabledbydefault]...
warning: passing argument 1 of 'fun1' makes pointer from integer without a cast [enabled by default]其中fun1是我的自定义函数是什么意思啊 在线等 急!!!!求讲的详细点
#include<stdio.h>
#include<string.h>
char fun1(char a[10],char b[10]);
main()
{
char a[10]="bjsh";
char b[10]="lnsy";
fun1(a[10],b[10]);
}
char fun1(char a[10],char b[10])
{
strcpy(a,b);
printf("%s ",a);
printf("\n");
printf("%s ",b);
return;
} 展开
#include<stdio.h>
#include<string.h>
char fun1(char a[10],char b[10]);
main()
{
char a[10]="bjsh";
char b[10]="lnsy";
fun1(a[10],b[10]);
}
char fun1(char a[10],char b[10])
{
strcpy(a,b);
printf("%s ",a);
printf("\n");
printf("%s ",b);
return;
} 展开
3个回答
展开全部
#include<stdio.h>
#include<string.h>
void fun1(char a[10],char b[10]); //没有返回值,就要写void
int main() //
{
char a[10]="bjsh";
char b[10]="lnsy";
fun1(a,b); //参数调用不需要加[],带括号表示传一个字符,不带括号传的是数组首地址
return 0; //
}
void fun1(char a[10],char b[10]) //
{
strcpy(a,b);
printf("%s ",a);
printf("\n");
printf("%s ",b);
}
追问
能解释下那个warning的意思么大神
追答
warning: passing argument 1 of 'fun1' makes pointer from integer without a cast [enabled by default]
英文不是很好,简单直译一下,”警告:传送到fun1函数的参数1从整型转成指针型没有经过转换(系统默认自动转换)" 大概就这么个意思。
说的就是这行:fun1(a[10],b[10]);
函数void fun1(char a[10],char b[10]) 声明与定义中写的参数是数组,也就是指针类型
而你调用时, fun1(a[10],b[10]); 这里的参数是一个字符,相当于整型数。所以会有警告!其实这是错误!
2014-12-01
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
贴代码0.0
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询