[英]sort using struct and pointers
我是結構和指針的新手。 嘗試學習它們。嘗試了一個簡單的具有struct和pointer的排序功能,但是存在一些問題。 有人可以幫助我理解它們嗎?
#include<stdio.h>
#include <stdlib.h>
int*
sorting (int* arg)
{
int temp=0,j,i;
for(i=1;i<5;i++)
{
for(j=0;j<5-i;j++)
{
if(arg[j] >arg[j+1])
{
temp=arg[j];
arg[j]=arg[j+1];
arg[j+1]=temp;
}
}
}
return arg;
}
int main(){
int i;
int n =5;
int *result_;
int *sorting_1_arg = malloc(n * sizeof *sorting_1_arg);
printf("Sort\n ");
printf("Enter 5 elements to sort: ");
for (i =0; i <n; i++){
scanf("%d", &sorting_1_arg[i]);
}
result_4 = sorting(sorting_1_arg);
printf ("Sorted List recieved from Server ");
for (i =0; i <n; i++){
printf("%d",sorting_1_arg[i]);
}
return 0;
}
當我運行此代碼時:
In function 'int main()':
[Error] invalid conversion from 'void*' to 'int*' [-fpermissive]
這些程序對我來說似乎還不錯。 除了第39行上有一個未聲明的變量:
result_4 = sorting(sorting_1_arg);
更正為
result_ = sorting(sorting_1_arg);
該程序運行正常。 只需為新行添加“ \\ n”,使其看起來更好。
這里的站點為您很好地介紹了結構和指針。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.