指標實現交換兩個數位大小

來源:互聯網
上載者:User

#include <stdlib.h>
#include <stdio.h>
void swap(int *x,int *y)
{
    int tmp;
    tmp = *x;
    *x = *y;
    *y = tmp;

}
int main(void)
{   
    int *x,*y;
    x = (int *)malloc(sizeof(int));
    y = (int *)malloc(sizeof(int));
    /*check if malloc is successful*/
    if(x == NULL || y == NULL)
    {
        return -1;
    }
    else
    {
        printf("The address x pointed to is %d\n",x);
        printf("The address y pointed to is %d\n",y);
        *x = 1;
        *y = 2;
        swap(x,y);/*call function*/
        printf("The address x pointed to is %d\n",x);
        printf("The address y pointed to is %d\n",y);
        printf("x is %d \n",*x);
        printf("y is %d \n",*y);
        free(x);
        free(y);
        x = NULL;
        y = NULL;
        int a = 100;
        int b = 200;
        swap(&a,&b);/*call function*/
        printf("a is now %d.\n",a);
        printf("b is now %d.\n",b);
        return 0;
    }
}

相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。