• 0

Newbie C++ Help


Question

Recommended Posts

  • 0

Forget scripting/markup languages to begin with. Worry about them later. They're pretty much irrelevant when it comes to programming (i.e., don't worry about HTML, CSS, XML, XHTML, DHTML, etc...).

Honestly, start with a classic beginner's language, either C++ or Java. I learned C++ first, but Java is a good first language too. I would stay away from C until you get a handle on C++, then go to C to get the extra functionality C provides. Then, if you're serious about doing some web work (database driven sites and whatnot), PHP would be really easy to learn. Also, if you learn Java, JSP becomes a real viable option for database driven websites.

Paul.

  • 0
Forget scripting/markup languages to begin with. Worry about them later. They're pretty much irrelevant when it comes to programming (i.e., don't worry about HTML, CSS, XML, XHTML, DHTML, etc...).

Honestly, start with a classic beginner's language, either C++ or Java. I learned C++ first, but Java is a good first language too. I would stay away from C until you get a handle on C++, then go to C to get the extra functionality C provides. Then, if you're serious about doing some web work (database driven sites and whatnot), PHP would be really easy to learn. Also, if you learn Java, JSP becomes a real viable option for database driven websites.

Paul.

Don't you have that backwards on the C/C++ part? C++ is the one with extra functionality, C is the basics :huh:

  • 0
Forget scripting/markup languages to begin with. Worry about them later. They're pretty much irrelevant when it comes to programming (i.e., don't worry about HTML, CSS, XML, XHTML, DHTML, etc...).

Honestly, start with a classic beginner's language, either C++ or Java. I learned C++ first, but Java is a good first language too. I would stay away from C until you get a handle on C++, then go to C to get the extra functionality C provides. Then, if you're serious about doing some web work (database driven sites and whatnot), PHP would be really easy to learn. Also, if you learn Java, JSP becomes a real viable option for database driven websites.

Paul.

Don't you have that backwards on the C/C++ part? C++ is the one with extra functionality, C is the basics :huh:

i always thought C++ was higher level language and couldn't do certain complicated, lower level operations that C could. making C harder and more time consuming to learn/program in

  • 0
LOL, that's the book they use in almost all the schools in toronto. My old school too!!!<br />

<br />

<br />

Originally posted by DeathLace <br />

Vi3tboi911 if you don't mind spending a little cash to buy a intro book to C++ try "A Guide To Programming in C++" by Tim Corica, Beth Brown and Bruce Presley<br />

Published by: Lawrenceville Press<br />

<br />

When I started to learn C++ I used this book in school, a great book that will really get you going, very easy to learn from too.

they teach u c++, DUDE, AWESOME :D the best we got, or, were going to get was VB, then i mentioned to the teacher that i had been programming since i was 9 (started with qbasic) and programming VB for about 4 years, then i went home and completed the final year 12 (what he thought was very hard) project, that night, to prove that i was smart :p it was a program turning an A into a B, a B into a C, HAHAHA

newchar=chr(asc(curchar)+1)

:p

so now after me asking very nicely to do java or c++......were doing delphi - mastered it already :p

anyway, thanks all of you for posting in this thread, its given me the urge to go an learn some more on c++ (i did a short course, but no1 else liked it, so it changed back to VB :( )

Does anyone have any good links for c++ in linux???

also, how do you compile, or test run a project using the gcc compiler???

  • 0

To the programming god above :rolleyes: who's already so hot on coding that they can't do a "man gcc", to get gcc to compile and link a program to an exectuable form you simply type "gcc -o whatever_the_hell_you_want_your_output_filename_to_be source.c"

Anyway, as an aside from that - I'm 22 now, been coding various things since the age of 5 on an Amstrad CPC 464, and the way I've found to learn about coding is NOT to do the crappy hello world type stuff, I mean cmon - which beaurocrat decided that the first week of coding school should be down with cout << "hello world" << endl;

The way I learned VB, Delphi, C++, Java and a little PHP was simply by hitting the help files, finding a function and writing a wrapper around it.

For example, in Delphi you get fundamental API access given to you, to figure this out I simply wrote a program that wrapped the API information returned (system info etc) into a nice neat box to show the user. All done using labels and about maybe 50 lines of code max.

C++, well - basic function-based C++ is dead easy to learn, it's procedural really...

OO can be a pain but once you've started it's only polite to carry on!

I wouldn't worry about memory allocation, or anything like that if you're new - read up on the bog basic functional stuff and it mushrooms from there, and from what I've seen so far if you run into trouble - there are a LOT of knowledgable bods around here to help!

Edited by CB-Dave
  • 0

Hi There,

I have been programming for about 9-10 years now, and proffesionally for about 5 years. My experience is that every person has his/hers own way of learning the best, personally what I find most effective is practical learning instead of theoretical learning. Then when I thought i was mastering a language at some level I have started to explore the theories more deeply.

In other words, im a "learn by example" kind of guy, I learned what some of the cpp language by just going thru various turtorials, and then my father bought me Bjarne Stoustrups (one of the great danes in programming :laugh:) first book, now i can only find the Oreilly C++ in a nutshell, on my bookshelf - I guess I lost Bjarne's book in a move.

For rookie programmers wanting to learn some OO based concepts could look into a language like Python, this language have proved to be one of my favorite tools, I love the powers of this language, and the way to implement it in other languages, if wanting to write performance critical parts in lower level languages. For instance the C/C++ api are incredible (python itselfes is implemented in c), but also the PythonForDelphi (cpp builder, delphi and kylix compliant) is great.

Maybe I got way of topic, I appologize for that, I just got carried away :D (my first post at neowin, but not last, hehe)

  • 0

C++:

- template functions

- template library, strings, vectors, lists, sorting, and so on.

- objects

- new and delete instead of malloc and free

- can do for (int n=0 ....) in a for loop without compiler bitching (i dunno if msvc does it, but gcc does.

well, there's a bunch more but that's the main difference.

I recommend to learn whatever the **** you wanna learn it for. If you're gonna be doing scripting use perl. Gonna write apps use C/C++.

  • 0

intersting to note that c ++ was, many moons ago, first called c with objects. C++ is an extention to C. Java is a progression from C ++ and is harder to understand for a newb then C.

C as a language is so easy that it takes some of the fun out of it. My lecturer at college used to say "if you could understand pointers then you knew the hardest bit of c" and pointers are easy to grasp if you have them explained to you properly.

c++ is a nice beast but is a beast and has lots of complicated parts to it which are good and in some situations usefull but i find i never use them. i prefere to keep code as low level and simple as possible as not to lag down code doing unneccesary work. Object Oriented program will seem alot easier to you is you have learn C's structure's, struct cast's. Memory management is easier then c's but if you programm in windows 3.0/1 then you carnt use it (doest get paged right in old version of windows).

Java after learning c++ is so quick to pick up it aint even a challenge, did my brother's university course work which had to be in jarva and ide only ever done c++.

Dont go the rounte of basic. if u can handle C/C++ then you can handle ANY language out there that is written with humans in mind. It may just be me but i like some challenge in the actually programming aspect.

Any way that just my point of view and shouldnt be set in gold..

  • 0

I just love the Primer Plus books. I have 2. C Primer Plus and C++ Primer Plus. They explain the language really well and i would suggest buying them if you have a few bucks to spend ($75 US for both). Also, I recommend learning C then C++, and then moving on to any other languages, cuz C and C++ are like the basics of programming. After you learn C++, all other languages should be a breeze. :D Hope this helped!

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • Microsoft: Windows 11 KB5094126, KB5093998 finally stops trusting a critical system threat by Sayan Sen This week Microsoft released the Patch Tuesday updates for June 2026 with KB5094126 on Windows 11 25H2, 24H2, and KB5093998 on Windows 11 23H2. On Windows 10 22H2 it's under KB5094127. Alongside the announced release notes for the new builds, Microsoft has revealed another change that is coming to Windows with these new releases. It has been confirmed that custom folders are getting a significant change with the June 2026 updates as such folders or folder names defined by desktop.ini will no longer appear after this update is successfully installed. While you may inititally think this is a bug with the new release, Microsoft has stated that this is in fact "expected behaviour" in its new support article regarding this which Neowin spotted today while browsing. Essentially it's a security hardening measure such that custom folder presentations are treated as potentially unsafe whenever Windows is not sure about their origin and whether that desktop.ini folder can be trusted or not. Here is list of such untrusted files and folders: Files downloaded from the internet that carry Mark-of-the-Web (MOTW). Files copied from certain remote locations, such as some WebDAV or HTTP-based locations. Files on network paths that are not classified as intranet or trusted by zone policy. For those who may not be familiar, Desktop.ini is a special configuration file used by Windows to customize the appearance and behavior of individual folders. Basically Windows can read specific instructions stored in Desktop.ini instead of displaying every folder with the same default settings. This can be used to apply custom icons, thumbnail images, localized folder names, and such informational tooltips (infotip). The file can also influence certain folder-specific behaviors and properties. It is typically stored as a hidden system file within a folder that has been designated to support Desktop.ini customization. However, because Windows Shell automatically reads and applies these attributes whenever a customized folder is opened, they have historically (since the Windows XP days) presented an attack surface as a result of an unchecked buffer in the Shell component responsible for extracting custom attributes from Desktop.ini files. As such an attacker could create a specially crafted Desktop.ini containing a malicious or corrupted attributes and place it on a network share. So if a user were to browse that folder, Windows would automatically process the file, potentially triggering a buffer overflow. This could allow arbitrary code to run with the same permissions as the logged-in user. Hence a seemingly harmless folder could become a security risk when their contents are not properly validated. For admins and users alike looking to manage this behaviour, Microsoft has shared a few ways. One of them is to assign a trusted mark on the folder in case you are sure of its source. Secondly a policy can be used to revert back to the previous state. Finally, the MOTW can be removed too to indicate to Windows that this is a safe file. The company explains: Option 1: Add the source to Trusted Sites (Recommended) If the affected content is stored on a known internal or managed source, add that source to the Trusted Sites list. Once the source is treated as trusted, Windows processes desktop.ini from that source normally. This keeps the protection in place for other locations and is the lower-risk option. Option 2: Use policy to restore previous behavior Organizations that need broader compatibility can enable the policy Allow the use of remote paths in file shortcut icons.Enabling this policy restores the pre-June 2026 behavior for affected remote or untrusted scenarios. Option 3: Check for and remove the Mark of the Web (MotW) If the desktop.ini file has a Mark of the Web (MotW), Windows may treat it as coming from an untrusted source and block customization. Verify whether MotW is present and, if appropriate, remove it from the desktop.ini file. This can restore expected behavior, but should only be done for trusted content, as it removes the associated security protection. To remove the MotW tag, open PowerShell and run one of the following commands: For a single desktop.ini file: Unblock-File "C:\Your\Folder\Path\desktop.ini" For all desktop.ini files in a folder: Get-ChildItem "C:\Your\Folder\Path" -Recurse -Filter desktop.ini -Force | Unblock-File Microsoft has warned though against using a broad opt-out using the provided policy as it reduces protection against potentially malicious remote folder-customization content. As such the tech giant recommends trusting only controlled internal sources and keeping trust settings as strict as possible. You can check out the official support article here on Microsoft's website.
    • LAV Filters 0.82.0 by Razvan Serea LAVFSplitter is a multi-format media splitter that uses libavformat (the demuxing library from ffmpeg) to demux all sorts of media files. LAV Splitter is a Souce Filter/Splitter required to demux the files into their separate elementary streams. LAV Audio and Video Decoder are powerful decoders with a focus on quality and performance, without any compromises. Supported Formats: MKV/WebM, AVI, MP4/MOV, MPEG-TS/PS (including basic EVO support), FLV, OGG, and many more that are supported by ffmpeg! LAV Filters are based on ffmpeg and libbluray and is aimed to offer a all-around solution to perfect playback of file-based Media as well as Blu-rays. LAV Filters 0.82.0 changelog: LAV Splitter NEW: Support for demuxing Dolby Vision Enhancement Layer streams NEW: Support for Animated WebP images Changed: When demuxing Blu-ray discs, Dolby Vision metadata is available on the primary video stream LAV Video NEW: Support for Animated WebP images Changed: Hardware decoding support for DVDs has been removed Download: LAV Filters 0.82.0 | 15.5 MB (Open Source) View: LAV Filters Website | Screenshot Get alerted to all of our Software updates on Twitter at @NeowinSoftware
    • For some reason when EU forced Microsoft to allow users to change the default browser and search provider in Windows (also no ads for Office and the likes) - it was good. But when it comes to Apple - then it's bad. BTW, Apple would have gone out of business if Microsoft wasn't pressed by US government several decades ago. 😉
  • Recent Achievements

    • One Month Later
      Sopa flores earned a badge
      One Month Later
    • First Post
      StaticMatrix earned a badge
      First Post
    • Week One Done
      StaticMatrix earned a badge
      Week One Done
    • Rookie
      lamborghiniv10 went up a rank
      Rookie
    • One Month Later
      pinnclepd earned a badge
      One Month Later
  • Popular Contributors

    1. 1
      +primortal
      506
    2. 2
      PsYcHoKiLLa
      207
    3. 3
      +Edouard
      156
    4. 4
      Steven P.
      88
    5. 5
      ATLien_0
      79
  • Tell a friend

    Love Neowin? Tell a friend!