Pm me, I'll give you a book in .pdf format.
//Mackan90096
For thoso who really want to learn it in depth and don't mind buying a book; I really, really recommend this book by the creator of C++ himself. It's how I learned it and I don't know of any better resource.
The reason he doesn't put the pdf up here is probably because it's a pirated copy?
C and C++ go hand in hand. Actually you will probably be hard pressed to try and find just a straight C reference material nowadays, most searches come up with C/C++ results.i would like to learn C stuff first but what the heck
"when"…This might come in handy when I ever want to learn C++. Thanks anyway!
http://www.amazon.com/Hacking-Art-Exploitation-Jon-Erickson/dp/1593271441 this book has a great explanation of C alone with no C++ involved and b.t.w i want to learn normal C instead of C++ first because when i start obj-c i want to know where im limited as far as C goes :)/>C and C++ go hand in hand. Actually you will probably be hard pressed to try and find just a straight C reference material nowadays, most searches come up with C/C++ results.i would like to learn C stuff first but what the heck
http://www.amazon.co...n/dp/1593271441 this book has a great explanation of C alone with no C++ involved and b.t.w i want to learn normal C instead of C++ first because when i start obj-c i want to know where im limited as far as C goes :)/>C and C++ go hand in hand. Actually you will probably be hard pressed to try and find just a straight C reference material nowadays, most searches come up with C/C++ results.i would like to learn C stuff first but what the heck
Probably because it is awesome! Square brackets ftw! Also a truly good program for an OS is developed in the native language, in Mac's case, Obj-C, and iOS dev can only be in Obj-C. So maybe he wishes to develop for Mac or iOS.May I ask why you want to learn Objective C?
correct!Probably because it is awesome! Square brackets ftw! Also a truly good program for an OS is developed in the native language, in Mac's case, Obj-C, and iOS dev can only be in Obj-C. So maybe he wishes to develop for Mac or iOS.May I ask why you want to learn Objective C?
Probably because it is awesome! Square brackets ftw! Also a truly good program for an OS is developed in the native language, in Mac's case, Obj-C, and iOS dev can only be in Obj-C. So maybe he wishes to develop for Mac or iOS.May I ask why you want to learn Objective C?
Probably because it is awesome! Square brackets ftw! Also a truly good program for an OS is developed in the native language, in Mac's case, Obj-C, and iOS dev can only be in Obj-C. So maybe he wishes to develop for Mac or iOS.May I ask why you want to learn Objective C?
C++++ (a.k.a C#) is really what you should use for Windows.Should I learn C++ then, as I use windows?
Ever heard of the reasons not to use an interpreter, and instead code natively?*looks at the Mono project and Adobe Flash's iOS compiler* Pretty sure you can develop in other languages besides Objective-C on iOS devices…
C++++ (a.k.a C#) is really what you should use for Windows.Should I learn C++ then, as I use windows?Ever heard of the reasons not to use an interpreter, and instead code natively?*looks at the Mono project and Adobe Flash's iOS compiler* Pretty sure you can develop in other languages besides Objective-C on iOS devices…
Mono Project, Adobe Flash's iOS compiler, Titanium, and many many more, all give you the ability to make iOS applications in languages other than Objective-C, however, the translation process behind the scenes that interprets from language x to Obj-C is shoddy at best. They always do a direct conversion, meaning that code can become massively inefficient, use deprecated method calls, and not use some API calls at all, just to list a few bad things. This can cause a bad UI, UX and functionality in programs, which Apple does not want, as such they will decline your app from publication on the app store instantly. If your app manages to make it beyond the validation within Apple you will always get bad ratings from users, which sends your, or your companies reputation into the ground.
TL;DR/In summary… no, just no, you should always code natively, there are many reasons why, if you want to know just some don't be lazy and read the text above.
I thought Windows was written in C++ and Assembly, though?
Why because Adobe Flash was mentioned, or because Apple was mentioned?Shit, I'm about to puke so bad right now.
So if you're saying people should code natively, then why are you also saying there are other (worse) options out there, seems a little contradictory. Last I heard (about 3-6 months ago) Apple was starting to reject them due to the deteriorating quality.You SHOULD always code natively, doesn't change the fact that there are other options and doesn't change the fact that, at least last I heard, Apple accepts applications written in other languages than Objective-C.
Hahahaha… Windows, written in Assembly, no.I thought Windows was written in C++ and Assembly, though?
And thats not because Windows is written in C++ or Assembly, it is because Assembly or C++ is best for performance on any computer system.If you're looking for the most performance, Assembly or C/C++ is the best way to go with Windows.
Hahahaha… Windows, written in Assembly, no.I thought Windows was written in C++ and Assembly, though?
Wikipedia said:
Why because Adobe Flash was mentioned, or because Apple was mentioned?Shit, I'm about to puke so bad right now.So if you're saying people should code natively, then why are you also saying there are other (worse) options out there, seems a little contradictory. Last I heard (about 3-6 months ago) Apple was starting to reject them due to the deteriorating quality.You SHOULD always code natively, doesn't change the fact that there are other options and doesn't change the fact that, at least last I heard, Apple accepts applications written in other languages than Objective-C.Hahahaha… Windows, written in Assembly, no.I thought Windows was written in C++ and Assembly, though?And thats not because Windows is written in C++ or Assembly, it is because Assembly or C++ is best for performance on any computer system.If you're looking for the most performance, Assembly or C/C++ is the best way to go with Windows.
EDIT: Fun fact, in about 5 or so years we will all be programming in JavaScript as it will be much faster than any other code out there. Reason: there is a new chip that has been released (currently version 1.0) that its sole purpose is to process HTML DOM and JS. Making it faster than anything else that has to share the CPU.
bad idea. C++ is a different language.i would like to learn C stuff first but what the heck
Why because Adobe Flash was mentioned, or because Apple was mentioned?Shit, I'm about to puke so bad right now.
I don't think so, because noone knows what progress will be made with x86 chips in the next few years. Also you would need to rewrite lots of stuff because the interpreters for all coding languages would have to work different.EDIT: Fun fact, in about 5 or so years we will all be programming in JavaScript as it will be much faster than any other code out there. Reason: there is a new chip that has been released (currently version 1.0) that its sole purpose is to process HTML DOM and JS. Making it faster than anything else that has to share the CPU.
C++ was designed in such a way that C is a valid subset of C++. With other words, every C program is valid C++ as well. There are only a couple of incompatibilities and those are nicely listed here: http://en.wikipedia.org/wiki/Compatibility_of_C_and_C++ . So to say that C++ is a different language (which it literally is, but that's not what you ment) isn't true. You can perfectly learn C first to get the hang of most of C-style syntax and the procedural paradigm without bothering about object orientation and exra syntax. If you ask me, C (and assembly certainly too) is perfect to learn real technical programming. It can make you grasp pointers, memory management, the stack, etc. If you proceed to C++, C#, Objective-C after that, you can be confident that you really understand what's going on on the lower levels and how you can control a program in every aspect. I'm not saying that you couldn't learn this through C++ (we did so at Uni), but I've seen many dive into C++ (or especially C#) and a lot of them avoided the low-level stuff because they could make their way around (with the logical inefficiency problems etc. of course) and they didn't really understand what was happening under the hood.bad idea. C++ is a different language.i would like to learn C stuff first but what the heck
No one who knows what they're talking about will recommend you to learn C in order to learn C++.C++ was designed in such a way that C is a valid subset of C++. With other words, every C program is valid C++ as well. There are only a couple of incompatibilities and those are nicely listed here: http://en.wikipedia.org/wiki/Compatibility_of_C_and_C++ . So to say that C++ is a different language (which it literally is, but that's not what you ment) isn't true. You can perfectly learn C first to get the hang of most of C-style syntax and the procedural paradigm without bothering about object orientation and exra syntax. If you ask me, C (and assembly certainly too) is perfect to learn real technical programming. It can make you grasp pointers, memory management, the stack, etc. If you proceed to C++, C#, Objective-C after that, you can be confident that you really understand what's going on on the lower levels and how you can control a program in every aspect. I'm not saying that you couldn't learn this through C++ (we did so at Uni), but I've seen many dive into C++ (or especially C#) and a lot of them avoided the low-level stuff because they could make their way around (with the logical inefficiency problems etc. of course) and they didn't really understand what was happening under the hood.bad idea. C++ is a different language.i would like to learn C stuff first but what the heck
Also, lots of microcontrollers (like the Arduino) natively use very close variants of C or even C itself and practically never C++ or anything else.
All these languages have the C language in common, so learning pure C can greatly help you to see how other languages build onto that, thus mastering those languages more quickly.
I never said that you needed C to learn C++. All my arguments say that C forces you more to learn the low-level stuff of programming than C++ does. It's mainly because of how C++ implements things better that it makes it able to ignore certain technical aspects of programming. And it's even a lot more relevant for languages as C#.No one who knows what they're talking about will recommend you to learn C in order to learn C++.* snip! *
Here's a factoid from a bot fed by such people:
[20:23:15] <nolyc> Learning C++ requires no previous C knowledge and many C style ways of doing things are replaced by better or equivalent language additions. A good C++ book will look very different from a good C book. However, if you do know C already, it is evident that reading The C++ programming language by Bjarne Stroustrup gives you a very solid understanding of C++.</nolyc>
A lot of languages like C and C++ (and hundreds of others) aren't interpreted at all but are compiled directly to machine code (which is equivalent to asm). So that's not entirely true. And even though efficiency would still be slightly better in assembly, the productivity of other languages totally outbalance asm.And assembly language is ALWAYS the fastest, because it interacts directly with the hardware and doesn't need an interpreter.
Not much more progress can be made with the silicon chip, they are starting to hit the limit of physics, there is only so small they can go, and its called an atom. However gold connections need to be 2 atoms. That is the limitation of silicon. Yes we can go to the graphene chip, and we eventually will, but there are safety concerns with it atm that they are trying to overcome.I don't think so, because noone knows what progress will be made with x86 chips in the next few years. Also you would need to rewrite lots of stuff because the interpreters for all coding languages would have to work different.
And assembly language is ALWAYS the fastest, because it interacts directly with the hardware and doesn't need an interpreter.
Not much more progress can be made with the silicon chip, they are starting to hit the limit of physics, there is only so small they can go, and its called an atom. However gold connections need to be 2 atoms. That is the limitation of silicon. Yes we can go to the graphene chip, and we eventually will, but there are safety concerns with it atm that they are trying to overcome.I don't think so, because noone knows what progress will be made with x86 chips in the next few years. Also you would need to rewrite lots of stuff because the interpreters for all coding languages would have to work different.
And assembly language is ALWAYS the fastest, because it interacts directly with the hardware and doesn't need an interpreter.
As it stands (excluding assembly) C/C++ is the language that runs fastest on our modern day computers. However the C/C++ program still needs to share the CPU with everything else, this is where the separate chip comes in and makes processing DOM quicker, it doesn't need to take up time in the CPU and share it with anything else, it will have its own dedicated chip!