在C中使用函数的问题 [英] Issue in using function in C

查看:80
本文介绍了在C中使用函数的问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

此代码中的问题是什么?

我有这个错误

what is the problem in this code?
I have this error

conflicting types for ‘random’void random(org select[size]){

< br $> b $ b

我的尝试:





What I have tried:

#include <stdio.h>    
#include <stdlib.h>   
#include <string.h>  
#define size 4

 typedef struct Org             		
{
   int  id[4]; 
   char name[4][7];  
}org;



struct buff
{
int bid[4];
char bname[4][7];
};
struct buff buf[3];

void random(org select[size]){



int i,j,r=0;
for (i=0; i< 3;i++){
       r = (rand() % (4 - 0)) + 0;
   for( j=0;j<6;j++){ 
    buf[i].bid[j]= select[r].id[j] ;
   strcpy(buf[i].bname[j], select[r].name[j]);
}}
for ( int i=0; i<4 ;i++){
     
   for(int j=0;j<4;j++){ 
printf("bname %s  bid = %d \n", buf[i].bname[j], buf[i].bid[j]);

}}

}

void main(  )
{
int i,j;
org select[size]; 

sprintf(select[0].name[0],"hello1");
sprintf(select[0].name[1],"hello2");
sprintf(select[0].name[2],"hello3");
sprintf(select[0].name[3],"hello4");

sprintf(select[1].name[0],"2ello1");
sprintf(select[1].name[1],"2ello2");
sprintf(select[1].name[2],"2ello3");
sprintf(select[1].name[3],"2ello4");

sprintf(select[2].name[0],"3ello1");
sprintf(select[2].name[1],"3ello2");
sprintf(select[2].name[2],"3ello3");
sprintf(select[2].name[3],"3ello4");

sprintf(select[3].name[0],"4ello1");
sprintf(select[3].name[1],"4ello2");
sprintf(select[3].name[2],"4ello3");
sprintf(select[3].name[3],"4ello4");

sprintf(select[4].name[0],"tello1");
sprintf(select[4].name[1],"tello2");
sprintf(select[4].name[2],"tello3");
sprintf(select[4].name[3],"tello4");





   printf(" Initial id :\n");
   for(i=0;i<4 ;i++)                         
    {
        for(j=0;j< 4;j++)            			
        { 
            // Rgene = (rand() % (5 - 1)) + 1;
             select[i].id[j]= j;  		
}}


random(select);

}

推荐答案

random是c-library中的标准函数。使用不同的名称,如myRandom或randomize来解决它。
random is a standard function in the c-library. Use a different name, like myRandom or randomize to solve it.


您正试图从指向其第一个元素的指针访问该结构,因此它应该是:

You are trying to access the structure from a pointer to its first element, so it should be:
void random(org* select){


这篇关于在C中使用函数的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆