ورود به حساب ثبت نام جدید فراموشی کلمه عبور
برای ورود به حساب کاربری خود، نام کاربری و کلمه عبورتان را در زیر وارد کرده و روی «ورود به سایت» کلیک کنید.





اگر فرم ورود برای شما نمایش داده نمیشود، اینجا را کلیک کنید.









اگر فرم ثبت نام برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.









اگر فرم بازیابی کلمه عبور برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.





کاربران برچسب زده شده

صفحه 1 از 2 12 آخرین
نمایش نتایج: از 1 به 10 از 12
  1. #1
    2012/08/09
    328
    6

    راهنمایی پیرامون عبارت

    سلام
    لطفا در رابطه با عبارت زیر توضیح دهید .
    تشکر.

    کد:
    #define COUNTOF(__BUFFER__)  (sizeof(__BUFFER__) / sizeof(*(__BUFFER__)))
  2. #2
    2009/12/26
    1,730
    264

    پاسخ : راهنمایی پیرامون عبارت

    مشابه یک آرایه سایز بافر رو تعیین و با دیفاین تعدادش رو مشخص میکنه!
    با تقسیم سایز - تعداد بایت کل بافر به تعداد بایت یک عضو بافر میشه تعداد اعضای بافر!
  3. #3
    2012/08/09
    328
    6

    پاسخ : راهنمایی پیرامون عبارت

    سلام
    فرض بفرمایید آرایه زیر تعریف شده است:

    کد:
    uint8_t aTxBuffer[] = "****";
    و این آرایه به تابعی با پروتوتایپ زیر ارسال میشود:
    کد:
    void function((uint8_t*)aTxBuffer);
    و تعریف تابع بصورت زیر است:
    کد:
    void function(uint8_t *pTxData){
    hspi->pTxBuffPtr = pTxData;}
    چرا ارسال آرایه به تابع بصورت زیر نیست؟چرا که تا اونجا که میدونم، اسم یک آرایه، آدرس عضو اول آن است.

    کد:
    void function(aTxBuffer);
  4. #4
    2009/12/26
    1,730
    264

    پاسخ : راهنمایی پیرامون عبارت

    این هم همون کاری رو کرده که منظور شماست فرقی نداره! اگر منظورتون این (uint8_t*) هست تو لیست ارگومان ها! فقط داره به تابع میگه این ادرسی که به تابع ارسال شده میتونه در پوینتر با سایز uint8_t قرار بگیره! چون در لیست پارامتر ها پوینتر از نوع (uint8_t*) تعریف شده ارگومان هم باید از همین نوع باشه تا کامپایلر ایراد نگیره و در c++ اینطور هست نه در c
    تاکید هست و برای محافظت از نوع کار خاصی روی داده انجام نمیده
  5. #5
    2012/08/09
    328
    6

    پاسخ : راهنمایی پیرامون عبارت

    سلام
    c++ اینطور هست نه در c
    البته این ، قسمتی از یک کد به زبان c بود.
    سوال(زبان c):
    فرض بفرمایید استراکچر زیر تعریف شده است:

    کد:
    typedef struct
    {
     void   (*Init)(uint16_t, uint32_t);
     uint16_t (*ReadID)(uint16_t); 
     void   (*Config)(uint16_t, uint32_t, uint32_t, uint32_t);
    }CAMERA_DrvTypeDef;
    و همچنین عبارت زیر:
    کد:
    CAMERA_DrvTypeDef  ov7670_drv = 
    {
    	ov7670_Init,
    	ov7670_ReadID,
    	ov7670_Config,
    };
    کد:
    void   ov7670_Init(uint16_t DeviceAddr, uint32_t resolution);
    void   ov7670_Config(uint16_t DeviceAddr, uint32_t feature, uint32_t value, uint32_t BR_value);
    uint16_t ov7670_ReadID(uint16_t DeviceAddr);
    در قسمتی از کد ، عبارتی به صورت زیر استفاده شده است:
    کد:
    ov7670_drv.ReadID(CAMERA_I2C_ADDRESS)
    سوالم این هست که تناظر میان توابع عبارت دوم و استراکچر اول (مثلا تابع ReadIDبه ov7670_ReadID ) بر چه اساس است؟ چرا که صرفا تشابه اسمی وجود دارد.
    سوال دوم :

    کد:
    #define buff        0x64000000
    کد:
    F1((uint8_t *)buff);
    تابع F1 به صورت زیر تعریف شده است:
    کد:
    void F1(uint8_t *buff)
    {  
     /* Start the Camera capture */
     F2(&hdcmi_eval, DCMI_MODE_CONTINUOUS, (uint32_t)buff, GetSize(current_resolution)); 
    }
    سوالم این هست که نقش اشاره گر buff در این بین چیست و اینکه آیا مقدار ارسال شده توسط buff به تابع F2 همان 0x64000000 است؟
    تشگر.
  6. #6
    2009/12/26
    1,730
    264

    پاسخ : راهنمایی پیرامون عبارت

    منظورم از c++ بودنش این بود کامپایلر های جدیدتر این موارد رو ایراد میگیرن وگرنه در c این کد بدون تاکید هم جواب میده
    سوال اول:
    بر اساس ارگومان ها مشابه اورلود کردن توابع
    دوم:
    این هم همون تاکید هست اینکه پارامتر تابع اف حتما از نوع uint8_t * هست تا کامپایلر ایراد نگیره! چون مقدار 640000.. برای buff ادرس هست نه خود مقدار داخل این ادرس! ولی تابع با مقدار داخل buff یا همون مقداری که در خانه ی 64000... ذخیره شده کار میکند برای همین باید به تابع فهماند که این مقداری که به تابع ارسال شده محتوای خانه ی 640000.. هست که ممکن هست هر مقداری باشد
  7. #7
    2012/08/09
    328
    6

    پاسخ : راهنمایی پیرامون عبارت

    بر اساس ارگومان ها مشابه اورلود کردن توابع
    (منظور از اُوِرلود رو نفهمیدم )اگر منظورتون آرگومان های ورودی است ، در صورت مشابه بودن آنها ، تعیین تناظر به چه صورت خواهد شد؟
  8. #8
    2009/12/26
    1,730
    264

    پاسخ : راهنمایی پیرامون عبارت

    به ساخت توابع هم نام با خروجی یکسان ولی حتما ارگومان های متفاوت اورلود کردن میگن! کامپایلر از روی لیست ارگومان ها تابع مورد نظر رو پیدا میکنه! نمیشه دو تابع داشت با اسم یکسان و لیست ارگومان یکسان و خروجی یکسان ولی میشه دو تابع با لیست ارگومان متفاوت داشت
  9. #9
    2012/08/09
    328
    6

    پاسخ : راهنمایی پیرامون عبارت

    سلام
    فرض بفرمایید که یک اشاره گر در حال اشاره به عضو اول یک آرایه دوبعدی است([0][0])
    آیا در صورت اضافه شدن به مقدار اشاره گر و رسیدن به انتهای سطر اول، با اضافه شدن یک مقدار دیگر، به سطر دوم و ستون اول اشاره خواهد کرد و به همین ترتیب تا آخرین عضو(سطر و ستون آخر) پیش خواهد رفت؟
    تشکر.

  10. #10
    2009/12/26
    1,730
    264

    پاسخ : راهنمایی پیرامون عبارت

    همینطوره!
    و برای اشاره به عضو ij از ارایه ی a با دیمانسیون X.Y میتونید به جای حالت معمول از i*Y+j استفاده کنید
    دوست من شما یه کتابی پی دی افی چیزی در مورد c++ مطالعه کنید
صفحه 1 از 2 12 آخرین
نمایش نتایج: از 1 به 10 از 12

موضوعات مشابه

  1. مشتق عبارت زیر؟؟؟؟؟
    توسط amir653 در انجمن دروس و مباحث دانشگاهي
    پاسخ: 0
    آخرين نوشته: 2015/07/22, 00:51
  2. معني عبارت __ چيه؟
    توسط elecfree در انجمن پروسسورهای ARM
    پاسخ: 0
    آخرين نوشته: 2015/03/13, 21:51
  3. اين عبارت يعني چي؟>
    توسط fahim123 در انجمن پردازش سیگنال
    پاسخ: 1
    آخرين نوشته: 2014/09/03, 14:44
  4. معنی لغت rational در عبارت زیر چیه ؟
    توسط skyzare در انجمن زبان انگلیسی
    پاسخ: 6
    آخرين نوشته: 2012/04/12, 07:53

کلمات کلیدی این موضوع

علاقه مندي ها (Bookmarks)

علاقه مندي ها (Bookmarks)

مجوز های ارسال و ویرایش

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