Repo dili İnglizce - Türkçe karışıktır.
Notlar ders zamanlamasıyla birebir gitmiyor dolasıyla bazı dosyalardaki konular ileri dosyalardaki pratikler üzerine inşa edilmiş olabilir.
- C language characteristics
- C Standarts
- C program
- compiler - derleyici
- tokenizing(atomlarina ayirmak)
- number systems - sayı sistemleri
- characters
- header files
- seperate compilation model
- external reference
- basic types of C language
- declaration(bildirim) and definition(tanimlama)
- storage duration
- scope (kapsam - faaliyet alani)
- naming - naming conventions
- function definition syntax
- return statement
- function call
- test functions (query, predicate)
<ctype.h>module- function prototype(s) | function declaration
- function wrappers
- variadic functions
- standart C library
- call(pass) by value, call(pass) by reference
- constants (sabitler)
- Input & Output Operations
- operator priority, precedence (operatör önceliği)
- operator associativity (öncelik yönü)
- arithmetic operators
- side effect (yan etki)
- maximal munch (en uzun atom)
- comparison operators
- logical operators
- short circuit behaviour (kısa devre davranışı)
- assignment operators
- sequence point (yan etki noktası)
- comma operator (virgül operatörü)
- ternary operator (koşul operatörü)
sizeofoperator
ifstatementwhilestatement- n kere dönen döngü idiyomu (loop idiom that loops n times)
- how to get out of a loop (bir döngüden nasıl çıkılır?)
- infinite loop (sonsuz döngü)[while]
breakstatement<conio.h>header for Microsoft Compiler_getch()and_getche()functionscontinuestatementdo whilestatementforstatement- infinite loop idiom(sonsuz döngü)[for]
switchstatementgotostatement- nested loops
#include#define- object-like macros
- function-like(functional) macros
- X macro
- comparison between functional macros and functions
- preprocessor operators
- conditional compiling (koşullu derleme)
- multiple inclusion guard
#undef- predefined symbolic constants
#error#line#pragma
rand()functionsrand()function- randomize idiom
- implicit type conversions
- assignment type conversions
- arithmetic type conversions
- explicit type conversions
- type-cast operator
- information about data structures, algorithms, big O notation
- arrays
- array decay (array to pointer conversion)
- arrays initialization
- designated initializer(C99)
- sorting algorithms
- bubble sort
- merge algorithm
- binary search
- multi-dimensional arrays
- NTBS (null terminated byte stream)
- string concatenate - append
- remove copy algorithm
- count algorithm
- count_if algorithm
- address of operator (adres operatörü)
- dereferencing (indirection) operator (içerik operatörü)
- pointer arithmetics
- subscript operator (köşeli parantez operatörü)
- diziler üzerinde işlem yapan fonksiyonlar
- pointer idioms
- comparison between addresses(pointers)
- functions that returns pointer(adres döndüren fonksiyonlar)
- valid and invalid pointers
NULL- null pointer- more pointer idioms
- pointer arrays
- pointer to pointer
constcorrectness in pointersvoidpointers- function pointers
- function pointer arrays
- pointer errors
- why using
constkeyword - pointers &
const
typedefdeclarations- type aliases in standart library
- string operations in
<string.h>modulestrlenstrchrstrrchrstrstrstrpbrkstrcpyandstrncpy- overlapped blocks and
restrictkeyword strcatandstrncat- string comparison(yazıların karşılaştırılması)
- lexicographical compare
strcmpandstrncmp
strspnandstrcspnstrtok
- generic functions in
<string.h>modulememsetmemcpyandmemmovememchrmemcmp- Endianness
qsortandbsearchin<stdlib.h>module- conversion functions between strings and numbers in
stdlib.hmoduleatoiandatofandatolandatollstrtolandstrtollandstrtoulandstrtoullstrtofandstrtodandstrtold
- formatted input-output functions in
stdio.hmoduleprintfandsprintfscanfandsscanf
- process termination functions in
stdlib.hmoduleexitandatexitabort
systemfunction instdlib.h
mallocfreecallocstrduprealloc- dynamic array data structure
autoregisterstaticstatickeyword in local namespacestatickeyword in global namespace- Linkage
- external linkage
- internal linkage
- no linkage
- Linkage
extern
constkeywordvolatilekeywordrestrictkeyword
- structures
- member selection operators
'.'dot operator'->'arrow operator
- structure variable's initialization
- structures and
typedefdeclarations - structures and functions
- complete and incomplete types
<date>module tests- composition
<person>module tests- HANDLE system
- alignment
offsetofmacro- comparison of structure types
- member selection operators
- unions
- tagged union - discriminated union
- enumarations
timelocaltimectime,asctimestrftimesetlocaleclockmktimedifftime
- bitwise operators (bitsel operatörler)
- bitwise NOT
~operator - bitwise shift operators
- bitwise left shift
<<operator - bitwise right shift
>>operator
- bitwise left shift
- bitwise AND
&operator - bitwise OR
|operator - bitwise XOR
^operator
- bitwise NOT
- bitwise manipulations
- bitfields
fopen,fclose,fcloseall(non-standart)fgetc,fputc- text and binary mode
removerename,tmpnamfprintf,fscanfformatted IOfgets,fputsfwrite,freadunformatted IO- file pointer manipulation functions
fseek,rewind,ftell,fsetpos,fgetpos
feof,ferror,clearerr,fflushsetvbuf,setbufstdout,stdin,stderrtmpfilefreopen
- static assertions
- dynamic assertions
errnomacro in<errno.h>perrorin<stdio.h>modulestrerrorin<string.h>- non-local jumps,
setjmp,longjmpin<setjmp.h>
- variable length array (VLA)
- compound literals
- flexible array member
inlinefunctions- variadic macros
- generic selection
- dynamic array
- linked list
- queue
- stack
- strict aliasing rule
- localization
- default argument conversion