Shogirt ustozi piru komildan so'radi:
- C dasturlash tilida websocket bilan ishlaydigan ilova yasash uchun nima qilish kerak?
Piru komil javob berdi:
- Avvalo web socket server yasaysan bo'talog'im
P.S: Quyi dasturlash tillarida agar siz olma pirogini tayyorlashni istasangiz, avvalo bu uchun koinotni kashf qilishingiz kerak))
- C dasturlash tilida websocket bilan ishlaydigan ilova yasash uchun nima qilish kerak?
Piru komil javob berdi:
- Avvalo web socket server yasaysan bo'talog'im
P.S: Quyi dasturlash tillarida agar siz olma pirogini tayyorlashni istasangiz, avvalo bu uchun koinotni kashf qilishingiz kerak))
2š73š11
Forwarded from Dark Voyage (ę»ē„)
me: aye, mavlono. what would possibly be that void pointer?
@yetimdasturchi: em, void pointer?!
me: no! i need to explain that to rust normal fucking way
@yetimdasturchi: š¤·āāļø
me: fuck, i hate semantics š©
@yetimdasturchi: em, void pointer?!
me: no! i need to explain that to rust normal fucking way
@yetimdasturchi: š¤·āāļø
me: fuck, i hate semantics š©
š8š„1
Dark Voyage
me: aye, mavlono. what would possibly be that void pointer? @yetimdasturchi: em, void pointer?! me: no! i need to explain that to rust normal fucking way @yetimdasturchi: š¤·āāļø me: fuck, i hate semantics š©
C dasturchilardan shax i mat rust dasturchilarga š
š6š1
Yetim dasturchi kundaligi
C dasturchilardan shax i mat rust dasturchilarga š
C dasturlash tili xotira bilan maksimum ishlashga moslashgan. Shu sababli ham uyerda har baloni pointerga olish imkoni bor.
Masalan zamonaviy linux kernelni shu kungacha minimum 256Kb xotira ishlashga moslay olishgan.
Masalan meni o'zimdagi loyihada butun boshli androidda 512Mbdan ortiqroq resurs sarflaydigan joyiga Cni o'zida 0 dan yozilgan narsa 71Kb ishlatmoqda.
Masalan zamonaviy linux kernelni shu kungacha minimum 256Kb xotira ishlashga moslay olishgan.
Masalan meni o'zimdagi loyihada butun boshli androidda 512Mbdan ortiqroq resurs sarflaydigan joyiga Cni o'zida 0 dan yozilgan narsa 71Kb ishlatmoqda.
3š47š„13
Bugun sizlarga doim "- @orzklvb mavlono yana lo'licha usulmi?!" deyishiga sabab narsalardan bir ikkisini aytaman))
C dasturlash tili strong type hisobalanadi. Bu esa o'z navbatida funksiyalar uchunam o'z ta'sirini ko'rsatadi. Masalan funksiya argumentlari. Tasavvur qilaylik bizga soni oldindan aniq bo'lmagan argumentlar kerak. Odatda bunday holat uchun posixdan qolgan variadic usul mavjud. Ammo uning birgina xavfli jihati agarda argumentlar soni va turi yetarli bo'lmasa runtime vaqtida xatolik ketishi mumkin.
Variadic usul:
Lo'licha usul:
Yangi struktura qiymatini xotira ajratish funksiyasisiz belgilash. Bunga ko'rsa kodlar qatori kamayadi va orticha funksiyalarga murojaat qilinmaydi.
Ikkita pointer qiymatlarini XOR amali orqali uchinchi o'zgaruvchi ishtirokisiz almashtirish:
Oldindan belgilangan makroslar orqali xatolik nuqtasini aniqlash (debugging uchun qulay):
Switch case bilan while loopni chatishtirsa break o'rniga continuedan foydalansa bo'ladi š
@yetimdasturchi
C dasturlash tili strong type hisobalanadi. Bu esa o'z navbatida funksiyalar uchunam o'z ta'sirini ko'rsatadi. Masalan funksiya argumentlari. Tasavvur qilaylik bizga soni oldindan aniq bo'lmagan argumentlar kerak. Odatda bunday holat uchun posixdan qolgan variadic usul mavjud. Ammo uning birgina xavfli jihati agarda argumentlar soni va turi yetarli bo'lmasa runtime vaqtida xatolik ketishi mumkin.
Variadic usul:
void func(int values, ...)
Lo'licha usul:
void func(type* values) {
while(*values) {
x = *values++;
/* x bilan harakat */
}
}
func((type[]){val1,val2,val3,val4,0});
Yangi struktura qiymatini xotira ajratish funksiyasisiz belgilash. Bunga ko'rsa kodlar qatori kamayadi va orticha funksiyalarga murojaat qilinmaydi.
struct something X = {0};
Ikkita pointer qiymatlarini XOR amali orqali uchinchi o'zgaruvchi ishtirokisiz almashtirish:
a ^= b; b ^= a; a ^= b;
Oldindan belgilangan makroslar orqali xatolik nuqtasini aniqlash (debugging uchun qulay):
printf( "Bu xatolik haqida xabar. %s:%d, fuksiya=%s\n", __FILE__, __LINE__, __FUNCTION__);
Switch case bilan while loopni chatishtirsa break o'rniga continuedan foydalansa bo'ladi š
void sw( int c ) {
switch ( c ) while (0) {
case 0:
printf("zero\n");
continue;
case 1:
printf("one\n");
continue;
default:
printf("default\n");
continue;
}
}
@yetimdasturchi
š18š„6š¢3ā¤1š1
Yetim dasturchi kundaligi
C dasturlash tili xotira bilan maksimum ishlashga moslashgan. Shu sababli ham uyerda har baloni pointerga olish imkoni bor. Masalan zamonaviy linux kernelni shu kungacha minimum 256Kb xotira ishlashga moslay olishgan. Masalan meni o'zimdagi loyihada butunā¦
Davomi:
Massivga teskari murojaat qilish:
Quyidagi bilan teng)
Ikkita pointer stringlarni bir biriga ko'chirish:
Shablonlardan foydalanish:
Sonni o'z qiymati tengiligda bir barobarga oshirish yoki tushirish ( ikkiga tezkor ko'paytirish ):
Bir qatordan iborat for loop:
Switch case orqali diapazonlarni aniqlash:
Massivga teskari murojaat qilish:
2[array]
Quyidagi bilan teng)
array[2]
Ikkita pointer stringlarni bir biriga ko'chirish:
while (*dest++ = *src++) ;
Shablonlardan foydalanish:
//Natija: 1234
#define merge(a, b) a##b
printf("%d ", merge(12, 34));
//Cheksiz sikl, tilni o'zingizga muammosiz moslash imkoniyatini ko'rsatish uchun.
#define ever (;;)
for ever{
}
Sonni o'z qiymati tengiligda bir barobarga oshirish yoki tushirish ( ikkiga tezkor ko'paytirish ):
x=x<<1;
x=x>>1;
Bir qatordan iborat for loop:
for ( int i=0; i < 10; i++, doSomethingElse( i ) );
Switch case orqali diapazonlarni aniqlash:
switch(c) {
case 'A' ... 'Z':
printf("harf");
break;
case 1 ... 5 :
printf("raqam");
}
š30š3
POSIX (Unix) standartga ega operatsion tizimlarning qulayligi kodlarni indamasdan Macos, Linux, BSD, Android kabi operatsion tizimlarda ishlatib ketaverasan.
Microsoft esa bu yetim tashkilot. Windows uchun 6500 qator kodni qayta ko'zdan kechirib ko'plab qismlarini WinAPI ga moslab chiqishing kerak.
Masalan akalar arpa/inet, unistd kabi apilarni windowsda o'zining alternativasi bor va barchasini shunga moslashing kerak degani.
Menimcha xuddi protsessorlar arxitekturasi kabi system apilar uchunam standartlar qilish zarar qilmasa kerak)
Microsoft esa bu yetim tashkilot. Windows uchun 6500 qator kodni qayta ko'zdan kechirib ko'plab qismlarini WinAPI ga moslab chiqishing kerak.
Masalan akalar arpa/inet, unistd kabi apilarni windowsda o'zining alternativasi bor va barchasini shunga moslashing kerak degani.
Menimcha xuddi protsessorlar arxitekturasi kabi system apilar uchunam standartlar qilish zarar qilmasa kerak)
š9š„5ā¤1
Yetim dasturchi kundaligi
POSIX (Unix) standartga ega operatsion tizimlarning qulayligi kodlarni indamasdan Macos, Linux, BSD, Android kabi operatsion tizimlarda ishlatib ketaverasan. Microsoft esa bu yetim tashkilot. Windows uchun 6500 qator kodni qayta ko'zdan kechirib ko'plabā¦
Unix is simple. It just takes a genius to understand its simplicity.
(c) Dennis Ritchie
(c) Dennis Ritchie
š„26š7ā¤3š³3
Sinab ko'rsa bo'larkan)
https://www.tg-me.com/questianonbot?start=441307831h
Do'stlaringiz va obunachilaringizga havolani ko'rsating va ulardan anonim savollar oling!
https://www.tg-me.com/questianonbot?start=441307831h
Do'stlaringiz va obunachilaringizga havolani ko'rsating va ulardan anonim savollar oling!
š16š6ā¤2
Yetim dasturchi kundaligi
Sinab ko'rsa bo'larkan) https://www.tg-me.com/questianonbot?start=441307831h Do'stlaringiz va obunachilaringizga havolani ko'rsating va ulardan anonim savollar oling!
Assalamu aleykum Uylanganmisiz yoshiz nechida asosan hobbiyiz nima? Yoqtirgan ovqatiz va bo'sh paytiz ko'p bo'ladimi...\nNega Aynan kanaliz nomi Yetim Dasturchi?
---
Valaykum Assalom (Farrux Zokirov ovozi bilan o'qilsin). Yoshim 27da, hobbyim shu ishim ya'ni dasturlash va muhandislik. Xitoyliklardan yagona farqim ko'ngil aynitmaydigan lyuboy narsalarni yeyaveraman). Yoqtirgan ovqatim yo'q va ovqat tanlamayman. Kanal nomi yetimligim uchunam yetim dasturchi.
---
Valaykum Assalom (Farrux Zokirov ovozi bilan o'qilsin). Yoshim 27da, hobbyim shu ishim ya'ni dasturlash va muhandislik. Xitoyliklardan yagona farqim ko'ngil aynitmaydigan lyuboy narsalarni yeyaveraman). Yoqtirgan ovqatim yo'q va ovqat tanlamayman. Kanal nomi yetimligim uchunam yetim dasturchi.
š¢39š„27š12š3
Yetim dasturchi kundaligi
Sinab ko'rsa bo'larkan) https://www.tg-me.com/questianonbot?start=441307831h Do'stlaringiz va obunachilaringizga havolani ko'rsating va ulardan anonim savollar oling!
Bugun ob havo qanday?
---
Stolichniyni maydalaydigan darajada)
---
Stolichniyni maydalaydigan darajada)
š22ā¤1š³1
Yetim dasturchi kundaligi
Sinab ko'rsa bo'larkan) https://www.tg-me.com/questianonbot?start=441307831h Do'stlaringiz va obunachilaringizga havolani ko'rsating va ulardan anonim savollar oling!
menga ham dasturlashni o'rgatasizmi?
---
Hammaga ham bilimimni o'rgataveraman, bilim yashiradigan odatim yo'q. Faqat nima o'rganishni odamni o'zi xohlashi va so'ray olishi kerak. Talabga qarab kontent bera olaman.
---
Hammaga ham bilimimni o'rgataveraman, bilim yashiradigan odatim yo'q. Faqat nima o'rganishni odamni o'zi xohlashi va so'ray olishi kerak. Talabga qarab kontent bera olaman.
š13ā¤4š„4
Yetim dasturchi kundaligi
Sinab ko'rsa bo'larkan) https://www.tg-me.com/questianonbot?start=441307831h Do'stlaringiz va obunachilaringizga havolani ko'rsating va ulardan anonim savollar oling!
Sizga eng cringe tuyulgan idea ?
---
Ma'naviyat, milliylik, ajdodlar birnimasi, yoshlar ittifoqi va insonlar o'z-o'ziga qo'yadigan har qanday sun'iy chegaralar
---
Ma'naviyat, milliylik, ajdodlar birnimasi, yoshlar ittifoqi va insonlar o'z-o'ziga qo'yadigan har qanday sun'iy chegaralar
š„19š4š1š³1
Yetim dasturchi kundaligi
Sinab ko'rsa bo'larkan) https://www.tg-me.com/questianonbot?start=441307831h Do'stlaringiz va obunachilaringizga havolani ko'rsating va ulardan anonim savollar oling!
Do u love me ? š
---
Who are you? I just love devices)
---
Who are you? I just love devices)
š36š„7ā¤3
Yetim dasturchi kundaligi
Sinab ko'rsa bo'larkan) https://www.tg-me.com/questianonbot?start=441307831h Do'stlaringiz va obunachilaringizga havolani ko'rsating va ulardan anonim savollar oling!
Š§ŃŠ¾ гГе когГа
---
ŠŠ½Šµ ŃŠ¾Š¶Šµ ŠøŠ½ŃŠµŃŠµŃŠ½Š¾)
---
ŠŠ½Šµ ŃŠ¾Š¶Šµ ŠøŠ½ŃŠµŃŠµŃŠ½Š¾)
š12ā¤2
Yetim dasturchi kundaligi
Sinab ko'rsa bo'larkan) https://www.tg-me.com/questianonbot?start=441307831h Do'stlaringiz va obunachilaringizga havolani ko'rsating va ulardan anonim savollar oling!
Bu dunyoda nima uchun yashayapsan
---
Shu savol javobini qidirish uchun
---
Shu savol javobini qidirish uchun
š33š4
Yetim dasturchi kundaligi
Sinab ko'rsa bo'larkan) https://www.tg-me.com/questianonbot?start=441307831h Do'stlaringiz va obunachilaringizga havolani ko'rsating va ulardan anonim savollar oling!
ŠŃŠøŃŠøŠ°Š»Ńно Š²Š¾Š¾Š±Ńе ŃŠµŃез ŃŠµŠ»ŠµŃон ГелаеŃŃŃ ŃŃŠ¾ Š²Š¾Š¾Š±ŃŠµ Š“ŃŃŠ³Š¾Š¹
---
Š£ Š¼ŠµŠ½Ń ŃŠµŠ»ŠµŃŠ¾Š±ŠøŃ ŠµŃŃŃ
---
Š£ Š¼ŠµŠ½Ń ŃŠµŠ»ŠµŃŠ¾Š±ŠøŃ ŠµŃŃŃ
š7š2