เรียนรู้ค
ลองใช้รหัส C ออนไลน์: T-SNIPPET | Godbolt | Cplayground GDB ออนไลน์
เครื่องมือ: FRAMA-C | อนุมาน
แหล่งข้อมูลออนไลน์:
มาตรฐาน
- มาตรฐาน C
- c คณะทำงาน WG14 เอกสาร
- C99
- C11
- C23 (ร่างสุดท้าย 2022)
- posix.1-2017 (opengroup.org)
คู่มืออ้างอิง (Dennis M. Ritchie) - PDF
หนังสือ (ใช้โดยฉัน)
- การเขียนโปรแกรม C: วิธีการที่ทันสมัย รุ่นที่สอง (2008) - KN King
- C Primer Plus , รุ่นที่ 6 (2014) - Stephen Prata
บทเรียน
- คู่มือการเขียนโปรแกรม C ของ BEEJ (อัปเดต 2021)
- C การเขียนโปรแกรม
- Stanford CS
- Essential C - Nick Parlante (PDF, 2003)
- พอยน์เตอร์และความทรงจำ - Nick Parlante (PDF, 2000)
- ข้อมูลพื้นฐานที่เชื่อมโยง - N. Parlante (PDF, 2001)
- ต้นไม้ไบนารี - N. Parlante (HTML)
- comp.lang.c
- บทช่วยสอนเกี่ยวกับพอยน์เตอร์และอาร์เรย์ใน C Ted Jensen (PDF, 2003)
- วิธีใช้แมโครอย่างถูกต้องใน C โดย Preslav Mihaylov
- คู่มืออ้างอิงห้องสมุด C โดย Eric Huss (1997)
- หมายเหตุตัวอย่าง - โครงสร้างข้อมูลและการใช้งานอัลกอริทึมใน C
- วิธีใช้ตารางแฮชใน C Ben Hoyt (2021)
- ตารางแฮช (จากการประดิษฐ์ล่าม, 2020) โดย Bob Nystrom
- Brian Kernighan ผู้จับคู่นิพจน์ทั่วไปรหัสโดย Rob Pike
- การสอน makefile ง่ายๆ
- การสอน makefile อื่น
- บทช่วยสอนเกี่ยวกับ MakeFiles แบบพกพาโดย Chris Wellons (NullProgram.com, 2017)
- การถอดรหัสกฎทางซ้ายซ้าย
- สร้างตัวแก้ไขข้อความ - การสอน | รหัส
- การสอน SDL
- Dan Gookin
- ภายในห้องสมุดมาตรฐาน C - Begriffs (2019)
- การเขียนโปรแกรม Posix Threads
- เอกสารภาษา Microsoft - C - เรียนรู้ที่จะใช้ C และ C Library Runtime - PDF
การเขียนรหัส C ที่ปลอดภัย
- มาตรฐานการเข้ารหัส SEI CERT C
- Felix Palmen - คู่มือผู้เริ่มต้นห่างจาก Scanf ()
- John Regehr - คำแนะนำเกี่ยวกับพฤติกรรมที่ไม่ได้กำหนดใน C และ C ++
- Chris Lattner - สิ่งที่โปรแกรมเมอร์ C ทุกคนควรรู้เกี่ยวกับพฤติกรรมที่ไม่ได้กำหนด
- เจ็ดขั้นตอนเพื่อปลอดภัย C - Thomas honold
- การเขียนรหัส C ปลอดภัยกว่า (github.com)
- สรุปกฎจำนวนเต็ม C/C ++ (nayuki.io)
- ทุกสิ่งที่ฉันหวังว่าฉันจะรู้เมื่อเรียนรู้ C (tmewett.com)
หลักสูตรออนไลน์
- CPSC223 - โครงสร้างข้อมูลและเทคนิคการเขียนโปรแกรม - PDF/HTML (2021)
- CS241 - การเขียนโปรแกรมระบบ - Linux/UNIX (2021)
- CS631 - APUE, การเขียนโปรแกรมขั้นสูงในสภาพแวดล้อม UNIX (2020-2564)
วิดีโอ
- ศึกษา C (ขึ้นอยู่กับ CS50)
- C Tutorial Ashley Mills (2015 - YouTube.com) ซอร์สโค้ดบน GitHub
- แนะนำถึง C บน Windows HandmadeHero
- C Modern C และสิ่งที่เราสามารถเรียนรู้ได้จากมัน - Luca Sas (ACCU 2021)
- รู้เบื้องต้นเกี่ยวกับ GDB
- บทช่วยสอน CS50
- Jacob Sorber - บทช่วยสอน GDB 1
- Jacob Sorber - บทช่วยสอน GDB 2
- โครงสร้างข้อมูล CS50 (2017 - YouTube.com)
- รายการที่เชื่อมโยง
- CS50 ตัวอย่าง 1 (2017 - YouTube.com)
- CS50 ตัวอย่าง 2 (2017 - YouTube.com)
- Jacob Sorber (2019 - YouTube.com)
- ตารางแฮช
- ตัวอย่าง 1 - CS50 (2018 - YouTube.com)
- ตัวอย่างที่ 2 - Jacob Sorber (2020 - YouTube.com)
- การเขียนโปรแกรมระบบฝังตัว - วิธีการโปรแกรมไมโครคอนโทรลเลอร์ฝังตัว (MCUS) ใน C (2013 - YouTube.com)
- ได้รับการสนับสนุนการเขียนโปรแกรมในสภาพแวดล้อม UNIX - วิดีโอ (2020-2021 YouTube.com)
- "การสร้างเกมตั้งแต่เริ่มต้นใน C" - Ryan Ries ผู้สอนที่ยอดเยี่ยมเกี่ยวกับวิธีการตั้งโปรแกรมใน C บน Windows (เริ่มต้น 2020 - YouTube.com)
- สัมภาษณ์ Brian Kernighan โดย Lex Fridman (ประวัติของ C, กรกฎาคม 2020, YouTube.com)
- Jacob Sorber Channel บน youtube.com
รหัสต้นฉบับ
- OpenBSD libc
- Musl-LIBC
- GLIBC
- gnu-coreutils
- ขด/libcurl
- Rosettacode
- CAT นำไปใช้ในระบบปฏิบัติการที่แตกต่างกัน (บน gitHub)/ gist
ตัวอย่างไลบรารีสตริง
- ฟังก์ชั่นสตริงจาก GLIB
- https://github.com/intel/safestringlib
- https://github.com/rurban/safeclib
- https://github.com/mpedrero/safestring
- https://github.com/antirez/sds
- https://github.com/maxim2266/str
- https://github.com/xyproto/egcc
- https://github.com/composer927/stringstruct
- https://github.com/c-factory/strings
- https://github.com/cavaliercoder/c-stringbuilder
โครงการ
- Awesome-c
- บทเรียนพื้นฐานโครงการ
- C เป็นภาษาสคริปต์
- c Library เทมเพลต
ฝึกซ้อมฝึกปฏิบัติ ...