函数间数据拷贝 stack overflow

来源:互联网 发布:淘宝优惠券设置 编辑:程序博客网 时间:2024/04/30 08:41

完成程序,实现对数组的降序排序
#include <stdio.h>
void sort( );
int main()
{
int array[]={45,56,76,234,1,34,23,2,3}; //数字任//意给出
sort( );
return 0;
}
void sort( )
{
____________________________________
}

解答:
#include<stdio.h>
#include<string.h>
 
void sort() {
    int a;
    char *p;
    static int array2[]={45,56,76,234,1,34,23,2,3}; //数字任//意给出  
    static int array3[]={1,2,3,23,34,45,56,76,234}; //数字任//意给出  
    p=(char*)&a;
    while(p++) {
        if(memcmp(p,array2,sizeof(array2))==0) {
            memcpy(p,array3,sizeof(array3));
            return;
        }
    }
}
 
int main() {
    int i;
    int array1[]={45,56,76,234,1,34,23,2,3}; //数字任//意给出  
    sort();
    for(i=0;i<8;i++) {
        printf("%d/n",array1[i]);
    }
    return 0;
}

原创粉丝点击