如何使用临时int(tmp)在C中排序类型为struct的数组?

时间:2017-10-18 22:32:17

标签: c

我从编译器收到错误,因为我无法将整数类型tmp分配给结构类型。我尝试冒泡排序结构类型的数组。代码比这大,但我认为这足以提供您需要的所有信息。

struct varor{
     int varunummer;
     char namn[WORDLENGTH];
     int lagersaldo; 
 };
 typedef struct varor Vara;

 void sorteraVaror(Vara reg[]){
         int i,j, tmp;
         for(i=0; i< MAX-1; i++){
             for(j=0; j<MAX-1; j++){
                 if(reg[j].varunummer>reg[j+1].varunummer){
                 tmp=reg[j].varunummer;
                 reg[j].varunummer=reg[j+1].varunummer;
                 reg[j+1].varunummer=tmp;
                 }
             }
         }   
 }

1 个答案:

答案 0 :(得分:0)

正如@vladfrommoscow指出的那样,换句话说; tmp必须与数组中的结构类型相同。