نمایش نتایج 1 تا 3 از 3

نام تاپیک: کاربر گزینه /TC در کامپایلر VC++‎

  1. #1
    کاربر دائمی آواتار linux
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    تهران
    پست
    2,313

    کاربر گزینه /TC در کامپایلر VC++‎

    #include <stdio.h>
    void main()
    {
    int sum=0;
    int mark[3];
    int mm[1];
    int i=0;
    float avg=0;

    mm[0]=10;

    for(i=0;i<3;i++)
    {
    printf("what was your mark in lesson %d ?:",i);
    scanf("%d",&mark[i]);
    printf("\n");
    }
    for(i=0;i<3;i++)
    {
    printf("mark[%d]=%d\n",i,mark[i]);

    }

    int j=0;
    //avg=sum/6;
    printf("sum is %d\n",sum);
    printf("your avrage is %f\n",avg);
    printf("J is %d",j);
    }

    من این کد را با CL /TC کامپایل می کنم خطا می دهد ولی با CL /TP درست کار می کند
    آیا در C مکان معرفی متغیر ها حتما باید در ابتدای هر تابع باشد؟

  2. #2

    نقل قول: کاربر گزینه /TC در کامپایلر VC++‎

    بله
    در کتاب ریچی و کرینگان هم گفته شده:
    In C, all variables must be declared before they are used, usually at the beginning of the
    function before any executable statements.
    (البته نمی دونم که آیا الان هم جزو ISO/ANSI C هست یا نه)
    آخرین ویرایش به وسیله Mehdi Asgari : دوشنبه 25 شهریور 1387 در 15:02 عصر

  3. #3

    نقل قول: کاربر گزینه /TC در کامپایلر VC++‎

    قابلیت تعریف متغیر در میان دستورات از استاندارد c99 به زبان C اضافه شده است که با توجه به کاربرد کم C نسبت به ++C در ویندوز بسیاری از امکانات c99 در کامپایلرهایی مثل Borland و ++Visual C برای زبان C تا کنون پیاده سازی نشده است، اما در GCC با توجه به کاربرد بیشتر زبان C در لینوکس اکثر آن پیاده سازی شده است (در نتیجه به همین شکل در نسخه minGW تحت ویندوز آن)، از جمله همین امکانات تعریف متغیر هاست.

    تیم فنی مایکروسافت اعلام کرده است که تا زمانی که مشتریان ما نیاز به آن نداشته باشند و این قابلیت ها را برای C تقاضا نکنند همچنان آن ها را پیاده سازی نمی کنیم. در مقالاتی نیز با نظر سنجی از مشتریان اعلام کرده است که با استاندارد بعدی برخی از موارد که مشتریان بیشتر درخواست کرده اند پیاده سازی خواهد شد.

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •