اطلاعیه

Collapse
No announcement yet.

سوال درباره ++C

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    سوال درباره ++C

    سلام
    معنی این warning چیه و چه وقت داده میشه؟ :nerd:
    local variable' x' used without having been initialized

    #2
    پاسخ : سوال درباره ++C

    سلام.
    برای استفاده از متغییرها ، اول باید تعریف بشن .
    مثلا:
    int X; char Y; مشکل شما اینه که متغییر رو تعریف کردین ولی بهش مقدار اولیه ندادین:
    int X=0; char Y=0;

    دیدگاه


      #3
      پاسخ : سوال درباره ++C

      سلام
      با این ایرور ها باید چه کرد؟

      term does not evaluate to a function
      و
      'sub ' : redefinition

      دیدگاه


        #4
        پاسخ : سوال درباره ++C

        سلام بزرگان

        البته ارور ها برای کامپایلرهای مختلف متفاوته

        کامپایلر شما چیه و ورژنش چنده؟

        sub: redefinition احتمالا بدلیل تعریف دوباره ی تابعی یا چیزی به این اسمه
        میگم احتمالا چون من از کامپایلر شما استفاده نمی کنم.

        دقت کنین اگه کامپایلر شما جدید یا قدیمی باشه فرق داره

        یعنی ممکنه از قوانین
        iso c++
        بهره نبرن.

        مثلا یکی از فرقهای استفاده کردن یا نکزدن از این استاندارد متغیری هست که داخل for بعنوان اشاره گر اعلان میشه.

        در
        old c++
        بعد از for میشد از این متغیر استفاده کرد و مربوط به حوزه ی for نبود.
        ولی در Iso C++ standard اینطور نیست.

        برای دادن جواب دقیق باید کدتو ببینم.

        مرسی و شرمنده که جوابو دقیق ندادم.

        Upload your files Here. Great Azeri Resumable File Host: http://endir.az/index.php?lang=5

        دیدگاه


          #5
          پاسخ : سوال درباره ++C

          سلام بزرگان

          در مورد
          local variable used
          باید عرض کنم که این فقط یه هشداره و بسته به تنظیم زمان کامپایل می تونه بعنوان ارور هم بحساب بیاد و جلوی کامپایل هم بیاد
          این مورد زمانی بوجود میاد که قبل از اولین استفاده ی یک متغیر هیچ مقداری توسط برنامه به اون منتسب نشه

          مرسی
          Upload your files Here. Great Azeri Resumable File Host: http://endir.az/index.php?lang=5

          دیدگاه


            #6
            پاسخ : سوال درباره ++C

            سلام بزرگان

            در مورد ارور
            term does not evaluate to a function
            باید عرض کنم که اگه شما چیزی غیر از یک تابع ( مثلا یک متغیر ) رو در جلوتر بعنوان یک تابع باهاش برخورد کنین، این ارور میاد
            یعنی مثلا متغیر a رو بعنوان
            a()
            استفاده کنین.

            مرسی.
            Upload your files Here. Great Azeri Resumable File Host: http://endir.az/index.php?lang=5

            دیدگاه


              #7
              پاسخ : سوال درباره ++C


              سلام

              آقای مایکل فارادی

              احتمالا شما تو برنامه ات باید یه همچین چیزی پیدا کنی (در مورد redefinition) که مثلا
              متغیر a تعریف شده و شما جلوتر برای مقدار دهی به اون بجای a=10; نوشتی int a=10;

              مرسی.

              نتیجه ی رفع مشکل ارور ها رو بفرما. :mrgreen: :mrgreen:
              Upload your files Here. Great Azeri Resumable File Host: http://endir.az/index.php?lang=5

              دیدگاه


                #8
                پاسخ : سوال درباره ++C

                سلام
                ممنون از راهنمایی های مفیدتون، راجع به کامپایلر من با visual studio 6 کار میکنم. این برنامه مال چند وقت پیشه نمیدونم کجا save کردم که کدشو بذارم ولی یادمه با مقدار دهی اولیه به متغییر ایرور بر طرف شد
                همین بود که شما گفتی :NO:
                نوشته اصلی توسط عابد بابازاده
                احتمالا شما تو برنامه ات باید یه همچین چیزی پیدا کنی (در مورد redefinition) که مثلا
                متغیر a تعریف شده و شما جلوتر برای مقدار دهی به اون بجای a=10; نوشتی int a=10;
                در ضمن منو فارادی خالی خطاب کنید راحت ترم :redface:

                دیدگاه


                  #9
                  پاسخ : سوال درباره ++C

                  سلام

                  چشم آقای فارادی شرمنده :redface:
                  Upload your files Here. Great Azeri Resumable File Host: http://endir.az/index.php?lang=5

                  دیدگاه


                    #10
                    پاسخ : سوال درباره ++C

                    دشمنتون شرمنده باشه :rolleyes:

                    دیدگاه


                      #11
                      پاسخ : سوال درباره ++C

                      سلام بزرگان

                      راستی اقای فارادی سوال این دفعه ام یه جورایی مربوط به سوالتون میشه
                      یعنی ممکنه مشکلتون از include کردن چندباره ی یک هدر بوجود اومده باشه
                      جایزه تشکر داره ها . :mrgreen:
                      سوالشم خیلی خیلی اسونتر از قبلیه. :mrgreen:


                      Upload your files Here. Great Azeri Resumable File Host: http://endir.az/index.php?lang=5

                      دیدگاه


                        #12
                        پاسخ : سوال درباره ++C

                        سلام

                        نوشته اصلی توسط عابد بابازاده
                        راستی اقای فارادی سوال این دفعه ام یه جورایی مربوط به سوالتون میشه
                        یعنی ممکنه مشکلتون از include کردن چندباره ی یک هدر بوجود اومده باشه
                        این برنامه مال خیلی وقت پیش بود الآ ن اصلآ یادم نیست چی بود ولی میدونم که درست شد.
                        anyway من ی سوال دیگه دارم ی برنامه هست برای مرتب کردن آرایه به روش shell metzner مطمئنم برنامه درسته، البته ایرور هم نمی ده ولی کار نمی کنه oo:

                        دیدگاه


                          #13
                          پاسخ : سوال درباره ++C

                          کد:
                          [ltr]
                          #include "stdafx.h"
                          #include <iostream.h>
                          const int max=10;
                          const int TRUE =1;
                          const int FALSE=0;
                          int obtainnumdata()
                          {
                          	int m;
                          	do{
                          		cout<<"enter number of data points [2 to"
                          			<<max<<"]:";
                          		cin>>m;
                          		cout<<"\n";
                          	}while (m<2||m>max);
                          	return m;
                          }void inputarray(int intarr[],int n)
                          {
                          	for(int i=0;i<n;i++) {
                          		cout<<"arr["<<i<<"]:";
                          			cin>>intarr[i];
                          	}
                          }
                          void showarray(int intarr[],int n)
                          {
                          	for (int i=0;i<n;i++) {
                          		cout.width(5);
                          		cout<<intarr[i]<<" ";
                          	}
                          	cout<< "\n";
                          }
                          void sortarray(int intarr[],int n)
                          {
                          	int offset,temp,inorder;
                          	offset=n;
                          	while (offset>1) {
                          		offset /=2;
                          		do{
                          			inorder=TRUE;
                          			for(int i=0, j=offset ; i<(n - offset); i++ ,j++) {
                          
                          				if (intarr[i]>intarr[j]) {
                          					inorder=FALSE;
                          					temp=intarr[i];
                          					intarr[j]=intarr[i];
                          					intarr[j]=temp;
                          				}
                          			}
                          		}while (!inorder);
                          	}
                          }
                          
                          
                          int main(int argc, char* argv[])
                          {
                          	int arr[max];
                          	int n;
                          	n=obtainnumdata();
                          	inputarray(arr,n);
                          	cout<<"unordered array is:\n";
                          	showarray(arr,n);
                          	cout<<"\nsorted array is:\n";
                          	showarray(arr,n);
                          	return 0;
                          }[\ltr]

                          دیدگاه


                            #14
                            پاسخ : سوال درباره ++C

                            چرا من کد بالا رو کپی پیست کردم همش بر عکس شده؟ :angry:

                            دیدگاه


                              #15
                              پاسخ : سوال درباره ++C

                              سلام بزرگان

                              آقای فارادی
                              intarr یه اشاره گره (چون نام یه آرایه هست)
                              شما هم اونو تو چند جا مثل این جاها بجای int استفاده کردی.
                              البته من این الگوریتمو که اسمشو شما گفتی نمی دونم چیکار میکنه. اگه میدونستم بهت میگفتم دقیقا چیکار کنی
                              ولی این خط ها رو ببین:

                              temp=intarr;
                              intarr[j]=intarr;
                              cin>>intarr;

                              تو سه خط بالا شما از اشاره گر بعنوان int استفاده کردین.
                              برای رفع این مشکل میتونین از اندیس استفاده کنین.
                              مثلا:
                              cin>>intarr[0];
                              البته بسته به الگوریتم برنامه داره.
                              راستی دقت کن که نام ارایه یه اشاره گر ثابت به خانه ی اول ارایه (با اندیس صفر ) هست.


                              بعد اینکه بعضی از کامپایلر های c++ مثل mingw برای استفاده از متغیر های عمومی شما رو ملزم به استفاده از :: در سمت چپشون میکنن. پس برای استفاده از max از
                              ::max
                              استفاده کنین.
                              مثلا:
                              int arr[::max];
                              البته ای مشکل فعلی شما نیست
                              ولی محض اطلاع عرض کردم .


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

                              مرسی.
                              Upload your files Here. Great Azeri Resumable File Host: http://endir.az/index.php?lang=5

                              دیدگاه

                              لطفا صبر کنید...
                              X