• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Liutauras Vilda
  • Paul Clapham
  • Bear Bibeault
  • Jeanne Boyarsky
Sheriffs:
  • Ron McLeod
  • Tim Cooke
  • Devaka Cooray
Saloon Keepers:
  • Tim Moores
  • Tim Holloway
  • Jj Roberts
  • Stephan van Hulst
  • Carey Brown
Bartenders:
  • salvin francis
  • Scott Selikoff
  • fred rosenberger

Is C/C++ good languages for learning programming?

 
Ranch Hand
Posts: 701
2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Do you think C/C++ are good languages for beginners learn programming?

Thank you
 
Marshal
Posts: 70591
287
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Their difficulty, compared to Java™ may make them better for learning.
 
author
Posts: 11962
5
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Campbell Ritchie wrote:Their difficulty, compared to Java™ may make them better for learning.


Building on Campbell's answer, starting with C would have the benefit of being forced to learn about the technology underlying higher level language and runtime implementations such as Java, Ruby, etc. The downside is that it's relatively difficult to do interesting stuff because you're bogged down with pointers or implementing utilities that are part of higher level languages' standard libraries.

Starting with a higher level language would likely be more fun because you're able to do interesting stuff earlier. The downside there is that once you get used to working with those higher level languages it can be difficult to motivate yourself to learn about pointers and explicit memory management.
 
Campbell Ritchie
Marshal
Posts: 70591
287
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
You want to try something like LISP or FORTH. Now those languages do make it very interesting to learn computing
 
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Rogerio Kioshi wrote:Do you think C/C++ are good languages for beginners learn programming?

Thank you

well,i begin with C#,but it is so hard for me to learn.
 
Ranch Hand
Posts: 130
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
yes, thats why C is still in syllabus in schools and colleges
 
Campbell Ritchie
Marshal
Posts: 70591
287
  • Likes 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I don't think C# is a very good language for learning, least of all its newer incarnations. So much of the workings are hidden behind Visual Studio® and you don't see what is happening. You end up learning Visual Studio® rather than programming.
 
clojure forum advocate
Posts: 3479
Mac Objective C Clojure
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Start with C so you will learn how things are really working under the hood. Then work on SICP.
Congrats, now you are a programmer.
 
Ranch Hand
Posts: 112
Eclipse IDE Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

abhay jain wrote:yes, thats why C is still in syllabus in schools and colleges



I second you;)
 
Greenhorn
Posts: 20
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
for a begginer concepts are more important than syntax and special usage of language so i think for start c (or ++) is a good choose.
but if you want start a human friendlier language of curse pascal is my advise.
 
author
Posts: 36
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi. Brian Overland here. Sorry for the long delay in responding to this... I wish I had been on the threads much sooner... family emergencies and distractions and all that. Yeah, I know you don't want to hear it.

A quick comment on what everyone else has said. Languages such as LISP etc. are very interesting, but there is a very good reason for learning C++. In learning C++, you essentially learn everything in C (with a few extra restrictions here and there) but learn much more -- you can learn object-oriented programming for example.

In any case, together C and C++ form the basis of "the C family of languages"...

Having learned this syntax and grammar, I trust you will find that although Java and C# have their difference, they are in the same family of languages, share much common syntax, and are easier to learn if you first have C++ under your belt.

My 2 cents' worth, anyway.

Brian O.
 
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Yes c and C++ are the basic language for learning other programming languages.
 
Greenhorn
Posts: 15
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
If you already have previous programming experience then it is an excellent choice. But if you are just beginning then it isn't the best choice as the language can venture into lower level programming at times. Easier languages might be Basic, python. You can even try scripting languages such as Php or Javascipt to get familar with the programming enviorment.
 
Ranch Hand
Posts: 384
MyEclipse IDE Spring Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
how about python. very good language to start programming
 
Ranch Hand
Posts: 50
Android Eclipse IDE Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

naveen yadav wrote:how about python. very good language to start programming


I, personally, am not a big fan of python, for one reason - indenting is essential to the program being able to run! This is probably good for beginners, getting into the habit of indenting code, but when I was writing in python on my Raspberry Pi, the keyboard that I was using didn't indent the right number of spaces, so I had to spend about half an hour manually going through each line of code and indenting it one space further. I would suggest starting on C/C++ as you said, but if that's to hard, I would go for Java.

One last thing, I would have suggested Ruby as a good language to learn but I think it is TOO easy to learn and might make learning lower level languages a lot harder! Like skiing/snowboarding, you want to start on the dry-slope (the lower level language e.g C++) to get your technique up to standard, and then when you move on to real snow (higher level language e.g Ruby) it is easy!
 
Ranch Hand
Posts: 135
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Hussein Baghdadi wrote:Start with C so you will learn how things are really working under the hood. Then work on SICP.
Congrats, now you are a programmer.



what is sicp.

and c++ is harder to learn in comparison to java?
 
Java Cowboy
Posts: 16084
88
Android Scala IntelliJ IDE Spring Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

william chaple wrote:

Hussein Baghdadi wrote:Start with C so you will learn how things are really working under the hood. Then work on SICP.


what is sicp.


Did you notice that Hussein's sentence includes a link?
 
With a little knowledge, a cast iron skillet is non-stick and lasts a lifetime.
reply
    Bookmark Topic Watch Topic
  • New Topic