C語言中關於複合陳述式的一些問題

來源:互聯網
上載者:User

  在C語言中,我們知道放在函數中的普通變數的值只能通過return語句傳回值,但是如果只是把複合陳述式放在主函數中,則複合陳述式中的變數定義又該如何呢?我們來看下邊一個例子:
#include <conio.h>
#include <stdio.h>

int main(){
    int a=3,b=2,c=1;
    clrscr();
    printf("[1]: %d, %d, %d\n", a, b, c);
    {
            int b=5;
            int c=12;
            printf("[2]: %d,%d,%d\n",a,b,c);
    }   
     printf("[3] %d,%d,%d,",a,b,c);
    getch();
    return 0;
}

結果是什麼呢。在Turob C中的運行結果為:
[1]: 3, 2, 1
[2]: 3,5,12
[3] 3,2,1,
可以看出,在複合陳述式(藍字顯示的部分)中,被重新定義的變數,就使用新定義的值,若在複合陳述式中沒有被重新定義,就使用函數中原來的值。

相關文章

聯繫我們

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

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

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.