Go Back   CodeCall Programming Forum > Software Development > C and C++
Register Blogs Search Today's Posts Mark Forums Read

C and C++ C and C++ forum for discussing all forms of C except for C#. These languages are powerful low level languages used for creating Operating Systems, Device Drivers, compilers and much more.

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1 (permalink)  
Old 07-09-2009, 12:30 PM
Newbie
 
Join Date: Jul 2009
Location: Chicago
Age: 31
Posts: 3
thunderclap82 is an unknown quantity at this point
C Programming Beginners Questions

First a little back story, but I promise I will get to my questions.

Like many people I've become more and more interested in the possibilities of programming for the iPhone. I have always wanted to learn programming, and I even studied it briefly my first year of college, but then I got sidetracked with another career path. Ten years later I'm ready to dig in and really try to learn C.

I'm primarily a Mac user and plan to learn and develop my programs on Mac, but I do use Windows on a daily basis and do like it, especially the prospect of Windows 7.

Anyway, here is my thought process for learning programming. I know there are a variety of languages that can be learned but, again, my first goal is to design apps and games for the iPhone. Researching iPhone app development it says to program in Objective-C. In researching Objective-C it says it's best to know C first. So I have picked up Learning C on the Mac. From there I plan to go to Learning Objective-C on the Mac, and then finally Beginning iPhone 3 Development: Exploring the iPhone SDK. (It also seems most languages derive from C, sort of like many spoken languages derive from Latin, so it seemed that C was the best choice.)

This is fine for iPhone and Mac development but when I start preparing to program games I really want to do something that's cross platform. Again, here it seems C is a wise choice for the foundation of the program but I realize re-programming for Windows specifically will be necessary.

Then I started hearing about SDL development which many cross platform developers seem to swear by. So now I'm thinking I should learn C as planned, then SDL and then look into more specific C programming for Windows. Does this make the most sense? What do you recommend? I know that this is very ambitious for someone who has never programmed, but I'm very determined to succeed in this.

I appreciate any thoughts you may have.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #2 (permalink)  
Old 07-09-2009, 12:43 PM
WingedPanther's Avatar
Super Moderator
 
Join Date: Jul 2006
Age: 36
Posts: 11,435
WingedPanther has much to be proud ofWingedPanther has much to be proud ofWingedPanther has much to be proud ofWingedPanther has much to be proud ofWingedPanther has much to be proud ofWingedPanther has much to be proud ofWingedPanther has much to be proud ofWingedPanther has much to be proud ofWingedPanther has much to be proud of
Re: C Programming Beginners Questions

Personally, I would skip C and go to C++ if you want to do cross-platform development, especially with games. For iPhone, I would go straight to Objective-C.
__________________
CodeCall Blog | CodeCall Wiki | Shareware
Programming is a branch of mathematics.
My CodeCall Blog | My Personal Blog
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #3 (permalink)  
Old 07-09-2009, 01:21 PM
Newbie
 
Join Date: Jul 2009
Location: Chicago
Age: 31
Posts: 3
thunderclap82 is an unknown quantity at this point
Re: C Programming Beginners Questions

Quote:
Originally Posted by WingedPanther View Post
Personally, I would skip C and go to C++ if you want to do cross-platform development, especially with games. For iPhone, I would go straight to Objective-C.
I'm curious why you recommend skipping C. It is my understanding that C++ and Objective-C are both based on C, and it is easier to pick up these languages after understanding C. And why C++ over SDL for cross platform development?
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #4 (permalink)  
Old 07-09-2009, 01:33 PM
Programmer
 
Join Date: Jun 2009
Posts: 104
Mathematix is an unknown quantity at this point
Re: C Programming Beginners Questions

Quote:
Originally Posted by thunderclap82 View Post
Then I started hearing about SDL development which many cross platform developers seem to swear by. So now I'm thinking I should learn C as planned, then SDL and then look into more specific C programming for Windows. Does this make the most sense? What do you recommend? I know that this is very ambitious for someone who has never programmed, but I'm very determined to succeed in this.

I appreciate any thoughts you may have.
This sounds like a plan to me. You will be learning C, which you cannot possibly go wrong with, the using SDL for your Windows based stuff that would further teach you C in a real-world context.

Good luck!
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #5 (permalink)  
Old 07-09-2009, 02:03 PM
jwxie518's Avatar
Speaks fluent binary
 
Join Date: Jan 2009
Location: New York City
Age: 18
Posts: 1,089
jwxie518 is on a distinguished road
Send a message via AIM to jwxie518
Re: C Programming Beginners Questions

I heard the old saying that unless you want to write an operating system on your own, then C is the way to go. I don't know how true it is but C has been a question to many people as you may search the forum. Many replies and many respond to rather or not should someone skip C.

You are not like me who has years to spend on learn programming language (I am only 18). I could spend the next 5 years to finish C++, Java, C, Python, and a few others if I choose to. It seems like you are a working person. But let see what Panther has to say about his comment. Mathematix is right too. These two guys are the real MAN, they know what they are talking about. They helped me a lot on the forum.

xDDDD sorry I am a beginner C++. Just my 2 cents.
__________________
John Wong's blog
Quote:
*-*-*-*__ C++ revolutionized the modern programming language, but what happen to C+? Programming is just a study of chemistry __*-*-*-*
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #6 (permalink)  
Old 07-09-2009, 04:37 PM
WingedPanther's Avatar
Super Moderator
 
Join Date: Jul 2006
Age: 36
Posts: 11,435
WingedPanther has much to be proud ofWingedPanther has much to be proud ofWingedPanther has much to be proud ofWingedPanther has much to be proud ofWingedPanther has much to be proud ofWingedPanther has much to be proud ofWingedPanther has much to be proud ofWingedPanther has much to be proud ofWingedPanther has much to be proud of
Re: C Programming Beginners Questions

Quote:
Originally Posted by thunderclap82 View Post
I'm curious why you recommend skipping C. It is my understanding that C++ and Objective-C are both based on C, and it is easier to pick up these languages after understanding C. And why C++ over SDL for cross platform development?
SDL is just a library. You can use it with C++ or C.

My experience is that to move from C to C++, you have to unlearn a lot of C habits that are considered bad practices in C++. It's easier to just start with C++ and pick up the C tidbits you need along the way. I also find C++ code much easier to create/understand, since it gives me far more options for how to create code.
__________________
CodeCall Blog | CodeCall Wiki | Shareware
Programming is a branch of mathematics.
My CodeCall Blog | My Personal Blog
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #7 (permalink)  
Old 07-09-2009, 08:13 PM
marwex89's Avatar
Code Warrior
 
Join Date: Jul 2008
Location: Somewhere that is shorter to write than "In the gloomy shadows of my personal namespace"
Posts: 9,849
marwex89 is a glorious beacon of lightmarwex89 is a glorious beacon of lightmarwex89 is a glorious beacon of lightmarwex89 is a glorious beacon of lightmarwex89 is a glorious beacon of lightmarwex89 is a glorious beacon of light
Send a message via AIM to marwex89 Send a message via MSN to marwex89
Re: C Programming Beginners Questions

C before C++ was discussed quite thoroughly here: C necessary before C++?

Objective C is a smaller step from C than C++ is, so you might want to take that into account when viewing the thread.
__________________

Computers make very fast, very accurate mistakes.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #8 (permalink)  
Old 07-10-2009, 08:36 AM
Programmer
 
Join Date: Jun 2009
Posts: 104
Mathematix is an unknown quantity at this point
Re: C Programming Beginners Questions

Quote:
Originally Posted by WingedPanther View Post
Personally, I would skip C and go to C++ if you want to do cross-platform development, especially with games. ...
With all due respect, I very strongly disagree with this from personal experience.

With cross-platform game development we do a lot of low-level code that has little to no requirement for C++ but makes C an absolutely essential language. When writing low-level code you have no need for higher level constructs like the STL, and when strings are handled, the 'string' class/wrapper is actually a big hindrance for a variety of reasons.

When C++ becomes useful is when we wish to make use of specific OO properties that it offers.

Particularly for games, knowing C is an essential skill.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #9 (permalink)  
Old 07-15-2009, 11:24 AM
Newbie
 
Join Date: Jul 2009
Location: Chicago
Age: 31
Posts: 3
thunderclap82 is an unknown quantity at this point
Re: C Programming Beginners Questions

Thank you to everyone who weighed in. I appreciate the input. Since I posted my original question one big change has happened: I'm moving back to Windows as my primary OS from Mac (I'm building a Hackintosh). Because of this and the advice posted here I am forgoing learning C and jumping into C++ on Windows instead of Mac. Then I'll move to Objective-C. This seems like a better method over the one I originally laid out.

I appreciate all the information and support. Thanks again!
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #10 (permalink)  
Old 07-15-2009, 11:27 AM
Programmer
 
Join Date: Jun 2009
Posts: 104
Mathematix is an unknown quantity at this point
Re: C Programming Beginners Questions

Quote:
Originally Posted by thunderclap82 View Post
... Because of this and the advice posted here I am forgoing learning C and jumping into C++ ...
Bad move. Good luck!
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Reply



Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes


Similar Threads
Thread Thread Starter Forum Replies Last Post
c++/opengl: Introduction to c++/opengl game programming for beginners amrosama C Tutorials 50 08-14-2009 11:48 AM
C++ Programming books Dankra C and C++ 8 08-04-2008 01:53 AM
site for programming questions gogoc General Programming 3 05-16-2008 03:19 PM
General programming and logic :: Programming language types Chinmoy Tutorials 1 04-07-2008 04:15 PM
General programming and logic Chinmoy Tutorials 0 03-20-2008 05:58 AM


All times are GMT -5. The time now is 06:51 AM.


vBulletin v3.8.0 ©2010, Jelsoft Enterprises Ltd.


no new posts

LinkBacks Enabled by vBSEO 3.1.0