• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EST 22:12
CET 04:12
KST 12:12
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
TL.net Map Contest #21: Winners4Intel X Team Liquid Seoul event: Showmatches and Meet the Pros10[ASL20] Finals Preview: Arrival13TL.net Map Contest #21: Voting12[ASL20] Ro4 Preview: Descent11
Community News
Starcraft, SC2, HoTS, WC3, returning to Blizzcon!21$5,000+ WardiTV 2025 Championship5[BSL21] RO32 Group Stage3Weekly Cups (Oct 26-Nov 2): Liquid, Clem, Solar win; LAN in Philly2Weekly Cups (Oct 20-26): MaxPax, Clem, Creator win9
StarCraft 2
General
TL.net Map Contest #21: Winners Starcraft, SC2, HoTS, WC3, returning to Blizzcon! RotterdaM "Serral is the GOAT, and it's not close" Weekly Cups (Oct 20-26): MaxPax, Clem, Creator win 5.0.15 Patch Balance Hotfix (2025-10-8)
Tourneys
Constellation Cup - Main Event - Stellar Fest $5,000+ WardiTV 2025 Championship Merivale 8 Open - LAN - Stellar Fest Sea Duckling Open (Global, Bronze-Diamond) $3,500 WardiTV Korean Royale S4
Strategy
Custom Maps
Map Editor closed ?
External Content
Mutation # 498 Wheel of Misfortune|Cradle of Death Mutation # 497 Battle Haredened Mutation # 496 Endless Infection Mutation # 495 Rest In Peace
Brood War
General
BGH Auto Balance -> http://bghmmr.eu/ SnOw's ASL S20 Finals Review [BSL21] RO32 Group Stage Practice Partners (Official) [ASL20] Ask the mapmakers — Drop your questions
Tourneys
[Megathread] Daily Proleagues [BSL21] RO32 Group B - Sunday 21:00 CET [BSL21] RO32 Group A - Saturday 21:00 CET BSL21 Open Qualifiers Week & CONFIRM PARTICIPATION
Strategy
Current Meta How to stay on top of macro? PvZ map balance Soma's 9 hatch build from ASL Game 2
Other Games
General Games
Stormgate/Frost Giant Megathread Dawn of War IV Nintendo Switch Thread ZeroSpace Megathread General RTS Discussion Thread
Dota 2
Official 'what is Dota anymore' discussion
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Deck construction bug Heroes of StarCraft mini-set
TL Mafia
TL Mafia Community Thread SPIRED by.ASL Mafia {211640}
Community
General
US Politics Mega-thread Russo-Ukrainian War Thread Things Aren’t Peaceful in Palestine YouTube Thread Dating: How's your luck?
Fan Clubs
White-Ra Fan Club The herO Fan Club!
Media & Entertainment
Anime Discussion Thread Movie Discussion! [Manga] One Piece Korean Music Discussion Series you have seen recently...
Sports
2024 - 2026 Football Thread NBA General Discussion MLB/Baseball 2023 TeamLiquid Health and Fitness Initiative For 2023 Formula 1 Discussion
World Cup 2022
Tech Support
SC2 Client Relocalization [Change SC2 Language] Linksys AE2500 USB WIFI keeps disconnecting Computer Build, Upgrade & Buying Resource Thread
TL Community
The Automated Ban List Recent Gifted Posts
Blogs
Saturation point
Uldridge
DnB/metal remix FFO Mick Go…
ImbaTosS
Why we need SC3
Hildegard
Career Paths and Skills for …
TrAiDoS
Reality "theory" prov…
perfectspheres
Our Last Hope in th…
KrillinFromwales
Customize Sidebar...

Website Feedback

Closed Threads



Active: 1710 users

I want to learn to C

Blogs > Arnstein
Post a Reply
1 2 3 4 Next All
Arnstein
Profile Blog Joined May 2010
Norway3381 Posts
April 23 2012 14:09 GMT
#1
OK, now that we're done with that awful play on words(letter?), let me get straight to the point:

I want to learn to code in C! I have downloaded and installed Xcode on mac(it wouldn't complete though, what is that about? It said 2 minutes remaining for 12 hours, so I just turned the computer off, and when I started it again it was installed).

What I'm looking for is to get a better overview over the whole process(why the files and folders are where they are in a project), as well as just learning to code.

It would be awesome if anyone knew a site like http://www.codecademy.com/ but for C!


rsol in response to the dragoon voice being heard in SCII: dragoon ai reaches new lows: wanders into wrong game
TheToast
Profile Blog Joined August 2010
United States4808 Posts
April 23 2012 14:22 GMT
#2
Honestly, you're probably best off learning C#, learning a .Net language actually has some real world applications and can allow you to program software for anyone on an MS Windows platform. Microsoft has made it clear that's the direction they want to go with .Net, and the more complicated aspects of C++ such as writing to specific memory bits has been removed. MSDN has some really good tutorials and has a number of chapters of some good books on learning .Net languages for free.

If you're not interested in .Net, I would say 100% you should look to learn Java (not actually all that different from C++), that would actually be useful for programming apps and cross-platform software.
I like the way the walls go out. Gives you an open feeling. Firefly's a good design. People don't appreciate the substance of things. Objects in space. People miss out on what's solid.
Arnstein
Profile Blog Joined May 2010
Norway3381 Posts
April 23 2012 14:26 GMT
#3
I want to learn C because I will be using it later in my education. What is the difference between C++ and C#?
rsol in response to the dragoon voice being heard in SCII: dragoon ai reaches new lows: wanders into wrong game
emucxg
Profile Blog Joined May 2007
Finland4559 Posts
Last Edited: 2012-04-23 15:18:58
April 23 2012 15:17 GMT
#4
On April 23 2012 23:26 Arnstein wrote:
I want to learn C because I will be using it later in my education. What is the difference between C++ and C#?

C# is easier and for beginners, it has garbage collection just like java, so u dont need worry about memory leaks...

C is for advanced programmers, but C runs much faster than C# though

correct me if im wrong

edit. there are more difference between those, i just mentioned some most important.
Arnstein
Profile Blog Joined May 2010
Norway3381 Posts
April 23 2012 15:52 GMT
#5
Ah, ok. But I'll just start with C anyways
rsol in response to the dragoon voice being heard in SCII: dragoon ai reaches new lows: wanders into wrong game
virpi
Profile Blog Joined August 2009
Germany3599 Posts
April 23 2012 15:52 GMT
#6
Learning C++ is pretty hard, but also very rewarding. You can also easily transfer your knowledge to other languages, once you've mastered the "first levels". If you're entirely inexperienced with programming, I'd suggest that you might try one of the "easier" languages first (such as C#), because the sheer power of C++ is pretty intimidating sometimes.

Don't learn C, though, unless you're planning to study software engineering. C is used to design operating systems and other software that's "close to the hardware". (don't know how to put this in english sry)
first we make expand, then we defense it.
TheToast
Profile Blog Joined August 2010
United States4808 Posts
April 23 2012 16:12 GMT
#7
On April 24 2012 00:52 virpi wrote:
If you're entirely inexperienced with programming, I'd suggest that you might try one of the "easier" languages first (such as C#), because the sheer power of C++ is pretty intimidating sometimes.


Actually Visual Basic is probably one of the easiest languages to learn. I'm no CS major, and despite my short attention span even I was able to learn enough VB to make some simple desktop applications. It has some real world applications too, such as being able to write macros in MS Office. Plus many of the concepts transfer pretty easily to other .Net languages like C#.
I like the way the walls go out. Gives you an open feeling. Firefly's a good design. People don't appreciate the substance of things. Objects in space. People miss out on what's solid.
Arnstein
Profile Blog Joined May 2010
Norway3381 Posts
April 23 2012 16:14 GMT
#8
Well, I will study technical cybernetics, and will do a lot of C, so I just want to start a year early trying to get the hang of it
rsol in response to the dragoon voice being heard in SCII: dragoon ai reaches new lows: wanders into wrong game
JellowLight
Profile Blog Joined October 2011
60 Posts
April 23 2012 16:26 GMT
#9
I started learning c++ a year ago as my first programming language. Everything is going allright and I never found it intimidating or anything. IF you jsut start at the basics and slowly work your way upwards then it is doable.
Spikeke
Profile Joined October 2010
Canada106 Posts
Last Edited: 2012-04-23 16:36:46
April 23 2012 16:34 GMT
#10
I went to that codeacademy site, kinda dumb.
Just grab a programming book for noobs or google cprogramming and start coding. Don't know why you would want to learn old C first, but hey that's your choice. Even if you wanted to learn COBOL I wouldn't stop you. use google and your success is determined by your motivation and self-discipline. Good luck.
infey
Profile Joined August 2010
Canada64 Posts
April 23 2012 16:46 GMT
#11
If you have your heart set on C then my advice would be to grab a solid book on learning C for beginners and work through it from start to finish. C is closer to the metal than many languages and there is a lot of knowledge you'll need that can't be gleaned *easily* from reverse engineering existing programs such as memory management, memory structure layout, pointers, etc A good book will be able to introduce and explain in a way that you'll be able to pick it up more quickly.

Finding someone with a lot of experience in C that you can ask questions of would also be a big help.
palmerdabbelt
Profile Blog Joined October 2010
United States46 Posts
Last Edited: 2012-04-23 16:58:43
April 23 2012 16:58 GMT
#12
You definately want to learn C first (the book I link actually teaches you a simple RISC assembly, which I think is the best way to learn C), especially if you're just doing this as a hobby. While you won't be a productive as you would be learning a high-level language you'll understand a whole lot more.

The intro to programming class at my school used this

http://highered.mcgraw-hill.com/sites/0072467509/

and I highly recommend it. It's particularly useful if you're interested in learning programming just for fun, as it will teach you what's actually going on inside your computer.

Additionally, I would recommend learning to use a proper editor (I use emacs, but vim is fine too), make, gcc, and the command line. When you're learning how to program an IDE (like Xcode) can actually complicate things as it will hide a lot of what's going on. Learning to use a Unix-like operating system (I use Gentoo, a Linux distribution) is also a huge plus, but as your on Mac OS X you'll be alright (there's some Unix in OSX if you look hard enough ).

Good luck!
Snuggles
Profile Blog Joined May 2010
United States1865 Posts
April 23 2012 17:01 GMT
#13
I friggin bought an entire book to learn C. Only to learn that I have no talent whatsoever to do learn it, took me weeks just to learn how compile my simple lines of code.
Deleted User 61629
Profile Blog Joined March 2010
1664 Posts
Last Edited: 2012-04-23 17:47:51
April 23 2012 17:47 GMT
#14
--- Nuked ---
fire_brand
Profile Blog Joined October 2009
Canada1123 Posts
April 23 2012 17:48 GMT
#15
Don't start with C. It'll teach you the wrong stuff. You're better off learning something else that's actually useful. C actually will hinder your learning later on.
Random player, pixel enthusiast, crappy illustrator, offlane/support
Snuggles
Profile Blog Joined May 2010
United States1865 Posts
Last Edited: 2012-04-23 18:07:29
April 23 2012 18:05 GMT
#16
Rather than learning C or C++, how come you guys haven't suggest to just learn Java? I read that it's similar to C++ but better and more convenient. Correct if I'm wrong because I'm trying to learn too.

EDIT: just noticed that someone mentioned Java, can anyone further elaborate on it?
GogoKodo
Profile Blog Joined April 2003
Canada1785 Posts
April 23 2012 18:06 GMT
#17
On April 24 2012 02:47 Inori wrote:
Show nested quote +
On April 24 2012 02:01 Snuggles wrote:
I friggin bought an entire book to learn C. Only to learn that I have no talent whatsoever to do learn it, took me weeks just to learn how compile my simple lines of code.

There's no such thing as "no talent to learn it". You might not have genius skills to hack google at 15, but to learn how to code and eventually get senior dev position - anyone can achieve that. Literally, anyone.

I agree that anyone can do it, but there is definitely talent or a particular way of thinking that makes progress much faster for learning how to code.
twitter: @terrancem
Melchior
Profile Joined January 2011
United States112 Posts
April 23 2012 18:18 GMT
#18
From my experience, Java or C# is probably easier to pick up and is good for teaching abstraction, etc. C requires a little more bookkeeping from the programmer in terms of memory management/pointers, but can be written to run faster than Java. C++ is extremely powerful but quite a bit different than the other languages to learn -- what is properly written code in C will often work on C++, but will almost inevitably be a suboptimal implementation in C++.

Of course, the language you should start with depends on what you want to do with it...
GogoKodo
Profile Blog Joined April 2003
Canada1785 Posts
April 23 2012 18:23 GMT
#19
Nobody has mentioned it yet, but I'll even put in a vote for learning Objective-C if you happen to be on a Mac. Working with Objective-C and Cocoa is actually really nice and you can go from learning to making a real desktop/iOS application pretty quickly. Objective-C still lets you learn about object oriented programming, and you can also make use of C structures (and c++ but I would steer away from that if you're just learning) easily.

It might not be as valuable for employment, unless you're looking into iOS or Mac development. But once you've learned one language it's really not difficult to pick up more in the future.
twitter: @terrancem
GogoKodo
Profile Blog Joined April 2003
Canada1785 Posts
April 23 2012 18:25 GMT
#20
On April 24 2012 02:48 fire_brand wrote:
Don't start with C. It'll teach you the wrong stuff. You're better off learning something else that's actually useful. C actually will hinder your learning later on.

Learning C will not teach you the "wrong stuff", whatever that is, and C is definitely useful.
twitter: @terrancem
1 2 3 4 Next All
Please log in or register to reply.
Live Events Refresh
Replay Cast
23:00
WardiTV Mondays #58
LiquipediaDiscussion
OSC
22:00
Masters Cup 150 Open Qual
davetesta61
Liquipedia
LAN Event
18:00
Day 3: Ursa 2v2, FFA
LiquipediaDiscussion
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
RuFF_SC2 188
NeuroSwarm 153
ProTech129
StarCraft: Brood War
Calm 7622
Artosis 696
Shuttle 636
actioN 399
Sharp 257
Noble 66
Icarus 3
Dota 2
LuMiX1
Other Games
tarik_tv10623
summit1g9874
JimRising 359
WinterStarcraft259
C9.Mang0253
ViBE163
FrodaN127
Organizations
Other Games
gamesdonequick790
Counter-Strike
PGL131
Other Games
BasetradeTV86
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 14 non-featured ]
StarCraft 2
• Sammyuel 13
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
Dota 2
• masondota21479
League of Legends
• Stunt209
Other Games
• Scarra536
Upcoming Events
OSC
8h 49m
LAN Event
11h 49m
Korean StarCraft League
23h 49m
CranKy Ducklings
1d 6h
LAN Event
1d 11h
IPSL
1d 14h
dxtr13 vs OldBoy
Napoleon vs Doodle
BSL 21
1d 16h
Gosudark vs Kyrie
Gypsy vs Sterling
UltrA vs Radley
Dandy vs Ptak
Replay Cast
1d 19h
Sparkling Tuna Cup
2 days
WardiTV Korean Royale
2 days
[ Show More ]
LAN Event
2 days
IPSL
2 days
JDConan vs WIZARD
WolFix vs Cross
BSL 21
2 days
spx vs rasowy
HBO vs KameZerg
Cross vs Razz
dxtr13 vs ZZZero
Replay Cast
3 days
Wardi Open
3 days
WardiTV Korean Royale
4 days
Replay Cast
5 days
Kung Fu Cup
5 days
Classic vs Solar
herO vs Cure
Reynor vs GuMiho
ByuN vs ShoWTimE
Tenacious Turtle Tussle
5 days
The PondCast
6 days
RSL Revival
6 days
Solar vs Zoun
MaxPax vs Bunny
Kung Fu Cup
6 days
WardiTV Korean Royale
6 days
Liquipedia Results

Completed

BSL 21 Points
SC4ALL: StarCraft II
Eternal Conflict S1

Ongoing

C-Race Season 1
IPSL Winter 2025-26
KCM Race Survival 2025 Season 4
SOOP Univ League 2025
YSL S2
Stellar Fest: Constellation Cup
IEM Chengdu 2025
PGL Masters Bucharest 2025
Thunderpick World Champ.
CS Asia Championships 2025
ESL Pro League S22
StarSeries Fall 2025
FISSURE Playground #2
BLAST Open Fall 2025
BLAST Open Fall Qual

Upcoming

BSL Season 21
SLON Tour Season 2
BSL 21 Non-Korean Championship
Acropolis #4
IPSL Spring 2026
HSC XXVIII
RSL Offline Finals
WardiTV 2025
RSL Revival: Season 3
META Madness #9
BLAST Bounty Winter 2026: Closed Qualifier
eXTREMESLAND 2025
ESL Impact League Season 8
SL Budapest Major 2025
BLAST Rivals Fall 2025
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2025 TLnet. All Rights Reserved.