数组不可以直接返回,只能通过参数传递出来,比如:void fun(int* p);int main(){ int a[100];fun(a);return 0;}
struct xx getxx(){ 1)struct xx a;..return a;2)return a(v1,v2);} 3) struct xx * getxx(){ return new xx();} 4)struct xx A;struct xx & getxx(){ return A;}
有一个指针数组 char *p[10] = {这里面放的都是指针},那么p的类型就是char **类型 你定义一个函数,返回char **类型就行了 比如 char **fun(){ char **s;return s;}
include<stdio.h>#include<math.h>int fun(int a[1000], int t){int i,max=0,N;for (i=0;i<t;i++)if (a[i]>a[max]) max=i;return max;}main(){int x[1000];int i,N,maxid;scanf("%d",&N);for(i=0;i<N;i++) x[i]=N*sin(i*0.16);maxid=fun(x,N);printf...
include<stdio.h>#include<malloc.h>#include<string.h>char *md(char a[]);//错误的数组返回char *md2(char a[]);//正确的数组返回int main(){ char password[10]="123456789",*decrypt=NULL; decrypt=md(password); printf("外部函数传递数组到子函数,子函数改变,外部函数也改变...
void sum(int x[],int y[]);//这括号里边的是形参,可以不给出数组的长度。而且数组名任意,只要 void main() //两个数组名不重复就行 { int a[2],b[2],i;printf("intput a[2]:\n");for(i=0;i<2;i++)scanf("%d",&a[i]);printf("input b[2]:\n");for(i=0;i...
办法有二:1. 函数内部新数组定义为static,这样可以直接把这个数组返回出来;2. 在函数内部把新数组的内容拷贝到外部数组里。
c语言中,a是int型数组,如果定义一个int*函数,要返回a,是可以return(a)的。
include "stdio.h"define N 10 double getave(int *p,int n){ int i,a,b,s;for(a=b=p[s=i=0];i<N;s+=p[i++])if(a>p[i])a=p[i];else if(b<p[i])b=p[i];return (s-a-b)/(N-2.0);} int main(int argc,char *argv[]){ int a[N],i;printf("Please ...
1、任何一个头文件中,或者C文件的非自编函数中定义的变量都是全局变量;2、可以,如:void F(char *sInput) ;就是这样的函数。