The C++ Programming Language
- 4th Edition
- By Bjarne Stroustrup
- 1366 Pages
@DevTwitter
آیا دوست دارید زبان سی را به طور کامل یاد بگیرید؟ آیا به دنبال نکات کلیدی در زمینه زبان سی هستید؟ اگر پاسخ شما بله است، کانال Telegram با نام "C 4 any Time" مناسب شماست! در این کانال، تمام آموزشهای مربوط به زبان سی به شما ارایه میشود. از مباحث پایه تا نکات پیشرفته، همه چیز را در اینجا پیدا خواهید کرد. ادمین این کانال آموزشی، @Alma_Electronic، آموزشها را به ترتیب ارایه میدهد تا به شما کمک کند تا بهترین نتیجه را بگیرید. حتما از ابتدای کانال شروع کنید تا هیچ چیز از شما فرورفته نشود. برای عضویت در این کانال و دسترسی به تمام محتوا، به @c_4_any_time مراجعه کنید. همچنین لطفا توجه داشته باشید که انتشار اطلاعات این کانال فقط با ذکر منبع مجاز است! برای یادگیری زبان سی، همین حالا به کانال "C 4 any Time" بپیوندید و از بهترین آموزشها بهره ببرید!
22 Nov, 13:07
09 Aug, 10:06
uint16_t sqrt32(uint32_t a) {
uint32_t rem = 0, root = 0;
for (int i = 32 / 2; i > 0; i--)
{
root <<= 1;
rem = (rem << 2) | (a >> (32 - 2));
a <<= 2;
if (root < rem)
{
rem -= root | 1;
root += 2;
}
}
return root >> 1;
}
27 Apr, 15:11
xprintf("%d", 1234); /* "1234" */
xprintf("%6d,%3d%%", -200, 5); /* " -200, 5%" */
xprintf("%-6u", 100); /* "100 " */
xprintf("%ld", 12345678); /* "12345678" */
xprintf("%llu", 0x100000000); /* "4294967296" <XF_USE_LLI> */
xprintf("%lld", -1LL); /* "-1" <XF_USE_LLI> */
xprintf("%04x", 0xA3); /* "00a3" */
xprintf("%08lX", 0x123ABC); /* "00123ABC" */
xprintf("%016b", 0x550F); /* "0101010100001111" */
xprintf("%*d", 6, 100); /* " 100" */
xprintf("%s", "abcdefg"); /* "abcdefg" */
xprintf("%5s", "abc"); /* " abc" */
xprintf("%-5s", "abc"); /* "abc " */
xprintf("%.5s", "abcdefg"); /* "abcde" */
xprintf("%-5.2s", "abcdefg"); /* "ab " */
xprintf("%c", 'a'); /* "a" */
xprintf("%12f", 10.0); /* " 10.000000" <XF_USE_FP> */
xprintf("%.4E", 123.45678); /* "1.2346E+02" <XF_USE_FP> */
27 Apr, 15:11
27 Apr, 12:41
27 Apr, 11:32
16 Apr, 00:32
TX_Buffer[0] = * ((uint8_t *) & float_val );
TX_Buffer[1] = * ((uint8_t *) & float_val + 1);
TX_Buffer[2] = * ((uint8_t *) & float_val + 2);
TX_Buffer[3] = * ((uint8_t *) & float_val + 3);
04 Dec, 23:33
04 Dec, 23:17
Value of var = 5
Value of var using single pointer = 5
Value of var using double pointer =
5 02 Dec, 13:23
02 Dec, 13:17
02 Dec, 13:12
02 Dec, 13:02
08 Oct, 07:53
08 Oct, 07:50
uint16_t calc_filter (uint16_t newValue, uint8_t channel){
#define FILTER_LENGTH 32
#define MAX_CHANNEL 3
#define HYSTERSIS 0
static uint32_t Sum[MAX_CHANNEL];
static uint16_t Array[MAX_CHANNEL][FILTER_LENGTH];
static uint8_t Index[MAX_CHANNEL];
static uint16_t oldValue[MAX_CHANNEL];
Sum[channel] -= Array[channel][Index[channel]];
Array[channel][Index[channel]] = newValue;
Sum[channel] += newValue;
Index[channel]++;
if (Index[channel] >= FILTER_LENGTH)Index[channel] = 0;
newValue = Sum[channel] / FILTER_LENGTH;
if ((newValue > (oldValue[channel] + HYSTERSIS)) || (oldValue[channel] > (newValue + HYSTERSIS)))
{
oldValue[channel] = newValue;
}
return(oldValue[channel]);
}