Start C Programming

Start C Programming

See C and memory, line by line

0 ratings
Free
In-App Purchases

Rating summary

Details

Released
October 11, 2026
Updated
November 7, 2026

Features

Start C Programming screenshot #1 for iPhone
Start C Programming screenshot #2 for iPhone
Start C Programming screenshot #3 for iPhone
Start C Programming screenshot #4 for iPhone
Start C Programming screenshot #5 for iPhone
Start C Programming screenshot #6 for iPhone
Start C Programming screenshot #7 for iPhone
Start C Programming screenshot #8 for iPhone
Start C Programming screenshot #9 for iPhone
Start C Programming screenshot #10 for iPhone
iphone
iphoneDuo
ipad
🖼️Get Icon
Icons↘︎

About

Learn C by running code one line at a time and watching memory change. Pointers are hard because you cannot see them. Each time you run a line, this app draws the stack frame of each call, the variables inside it, the heap blocks you borrow with malloc, and where each pointer points. The last changed value turns yellow, and you can step back to see it again. Step through and rewind - Run to the next line, a breakpoint, or the end, or step back a line - Watch frames pile up when a function is called and disappear when it returns - Pointers are arrows, arrays are rows of slots, and structs show their members and padding - Tap a variable to see its bytes in hex, decimal, binary, or characters - Set scanf input, arguments, and files before you run, and see what your program read and wrote - Write your own headers and link several .c files, as in real C - Processes and threads appear in tables, with each process's memory, pipes, and sockets drawn - A virtual microcontroller board shows its LEDs, buttons, registers, and terminal 10 tracks and two appendices, 447 lessons - Track 0 First steps in programming — hardware, operating systems, bits and files, algorithms, and bugs (20 lessons) - Track 1 Programming basics — values, conditions, loops, and functions (16 lessons) - Track 2 The C language — printf to pointers, structs, dynamic memory, file I/O, and function pointers (68 lessons) - Track 3 Memory essentials — bits and bytes, the memory map, the stack and the heap, and memory bugs (33 lessons) - Track 4 Executable essentials — compiling and linking, assembly, object files, and executable formats (36 lessons) - Track 5 Capstone projects — a string processor, a linked list, a memory allocator, an RPN calculator, and a word counter (27 lessons) - Track 6 Systems programming — fork, pipes, threads, shared memory, sockets, and poll, then a work queue and a chat room (51 lessons) - Track 7 C for embedded development — registers, GPIO, timers and PWM, interrupts, UART, and flash and RAM on a virtual board (42 lessons) - Track 8 Data structures in C — growing arrays, generic containers, hash tables, balanced trees, tries, and graphs, then an LRU cache (33 lessons) - Track 9 Building a language in C — what C promises, undefined behavior, closures and exceptions in C, garbage collection, and a bytecode VM (35 lessons) - Appendix A Computing and the lineage of C — computing history up to C and what C89 to C23 changed (51 lessons) - Appendix B Computer science beyond C — algorithms, the CPU, the OS, networks, and the limits of computation (35 lessons) Lessons are short cards with examples you run in place, marked beginner, intermediate, or advanced. Each module has a quiz, track modules have auto-graded exercises with hints, and each track ends with a final quiz. A placement quiz suggests where to start, with Track 0 for new programmers. Errors explained - Errors and warnings are caught where clang catches them, with an explanation, a fix, and a related lesson - Out-of-bounds writes, use after free, double frees, and leaks stop or warn where they happen, with what real C would do - Data races, deadlocks, and phone typos like curly quotes are flagged too Like real C - Supports C99 and C11 - Hundreds of test programs match clang on a Mac, down to the exit status - Files live in a virtual file system inside the app - Processes, sockets, and the virtual board run inside the app; networking is loopback only, and no real hardware is touched On your device, with no internet A C interpreter built into the app runs everything on your device. Progress syncs through your own iCloud. There are no ads. Start for free All of Tracks 0 and 1, the first module of Tracks 2 to 9, and both appendices are free. The other modules open with a one-time purchase per track, which also opens modules added in later updates. One purchase works on both iPhone and iPad. On iPad, code, memory, and output sit side by side, and you can open several windows.
Show more
+2

What's New in Start C Programming

1.9.0

November 7, 2026

1.9.0 업데이트 - 연습장에서 내 헤더 파일을 만들어 #include "point.h"로 넣을 수 있습니다. 파일 칸에서 헤더를 더하면 에디터 위에 main.c와 헤더의 탭이 생겨 같은 에디터로 고치고, 헤더 안의 줄에도 중단점을 걸어 한 줄씩 실행합니다. 오류와 경고는 clang처럼 헤더의 파일과 줄, "In file included from"으로 알려 줍니다. - 연습장 파일 칸의 .c 파일을 main.c와 함께 이어 실행합니다(cc main.c util.c처럼). 다른 파일의 함수로 들어가면 코드 칸이 그 파일을 보여 주고, 같은 이름을 두 파일에서 정의하거나 정의가 없으면 링커처럼 알려 줍니다. - iPad에서 창을 여러 개 띄울 수 있습니다. 레슨·실습·연습장 코드를 꾹 눌러 "새 창에서 열기"로 나란히 놓고, 창마다 보던 화면을 기억합니다. 같은 연습장 코드는 한 창에서만 고칩니다. - iPad 메뉴 막대에 "실행" 메뉴가 생겨 단계 실행과 채점의 키보드 단축키를 볼 수 있습니다. 불편한 점은 지원 페이지로 알려 주세요.

More
8

Subscriptions & In-App Purchases

$5.99

Track 8: Data structures in C

Unlocks all modules of Track 8.

Developer apps