Although I am very good with html, css and a little at php,javascript and mysql, i still can't manage to get interested or start learning basic programming. To be honest, i barely know anything about c or c++ since i skipped basic programming and proceeded to learn right away php,javascript and mysql where-in i had a very tough time. My question is if there are any tools/projects/books/tutorials/software/techniques that you recommend and that will hopefully get me interested in learning c and c++ to fill in my gap in programming.

Dani AI

Generated

— having HTML/CSS and some PHP/JS/MySQL already is an advantage: the goal with C is not to copy web workflows but to learn the small, explicit building blocks those higher-level languages hide (types, memory, pointers, lifetime). The thread has useful pointers (thanks to for tutorials and to and for textbook recommendations). A focused, project-driven approach will make the theory stick.

A simple, practical roadmap:

  • Week 1: syntax, compilation, control flow, simple I/O. Get comfortable compiling and reading compiler warnings.
  • Week 2: functions, arrays, strings, pointers (basic pointer arithmetic). Reimplement 2–3 tiny helpers familiar from PHP/JS (split/tokenize, trim, simple formatter).
  • Week 3: dynamic memory (malloc/free), structs, simple linked lists and dynamic arrays. Practice writing small routines and freeing everything.
  • Week 4: file I/O, command-line arguments, a mini project (CSV reader, word-frequency counter, or a CLI todo list). Add small tests and edge-case checks.

Practical tools and habits that pay off:

  • Compile with warnings and debug symbols:
    gcc -std=c11 -Wall -Wextra -pedantic -g -O0 main.c -o main
  • Use AddressSanitizer for fast memory checks: compile with -fsanitize=address -g. On Unix, valgrind --leak-check=full ./main is another option.
  • Make commits small and test often. Keep functions short and check every malloc/fopen return.

Common pitfalls and quick tips:

  • Treat pointers and ownership explicitly; prefer clear ownership rules (who frees what).
  • Turn warnings into allies; fix every -Wall warning early.
  • When asking for help, include a minimal reproducible example and exact compiler output (this speeds diagnosis).

Tie readings and tutorials already mentioned here to this hands-on path: read to clarify concepts, but spend most time coding small, well-scoped programs and practicing debugging.

Recommended Answers

All 4 Replies

here is the post about that

I'll suggest the book programming in ANSI C by Balaguruswamy and Let Us C by Yashwant Kanitkar.

I second the books mentioned by yashsaxena . Both of the books are top notch

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.