Categories > Coding > C++ >

Is learncpp.com a good site for learning C++?

Posts: 13

Threads: 3

Joined: Jun, 2023

Reputation: 1

Posted

I'm trying to learn C++ specifically for reverse engineering, is https://learncpp.com a good site to learn C++ for any purpose or are there any other places I could learn C++ for reverse engineering specifically?

  • 1

I am a scripter and exploiter that has recently started developing DLLs and learning reverse engineering.

Posts: 27

Threads: 6

Joined: Jul, 2023

Reputation: 2

Replied

theres no specific learning, u need to know  C++ to reverse engineer, i started learning there but it got hard i started and its easier watching a youtube video 10 hours

  • 0

Added

i mean theres no specific learning for C++ to know reverse engineering

  • 0

Posts: 283

Threads: 48

Joined: May, 2022

Reputation: -4

Replied

don't learn C++ in conjunction with reverse engineering. Learn C++ properly, then learn reverse engineering, most of these so called reverse engineers who "know" c++, really are just mediocre developers. learncpp.com is great for learning C++, then once you get more advanced you can move onto C++ books that teach advanced C++ concepts and practices. 

  • 0

https://media.discordapp.net/attachments/1044764388546068510/1051935933836050482/Signature_4.png

Posts: 140

Threads: 28

Joined: Feb, 2021

Reputation: 4

Replied

Learn C first on an operating system like GNU/Linux, you'll learn the important basics. Then, move to Windows and start "learning C++". You'll most likely end up using C features and little to no C++.

 

I can give you a list of things to learn in order:

Learn pointers. It's easier than you think. Here's a very simple example of using a pointer:

// A pointer can be a variable or register or some sort of storage that stores an address to something else in memory
int my_actual_variable = 123;
// You can use uintptr_t to make a simple pointer:
uintptr_t my_pointer = &my_actual_variable;

OR

// You can use a generic pointer like this:
int * my_pointer = &my_actual_variable;

OR

// You can also just use void for a non-discriminatory pointer
void * my_pointer = &my_actual_variable;

Pointers can also be used to edit memory in a specific address of memory (this will be very useful when making cheats!):

// Edit an int in address 0x12345678 in memory (set it to 99)
*((int*)0x12345678) = 99;

When making cheats like this, make sure it's a DLL or make sure that your code is injected to the game. Editing it from another process will not work, because many CPUs like amd64 or AArch64 have MMUs which protect memory. Operating system kernels like Linux or NT (Windows) will take advantage of amd64's GDT (Global Descriptor Table) and/or paging to protect memory for each process to make sure that a process doesn't write to another process.

 

There's still a bit more to learn, but just make sure that you're looking at a "learn C" tutorial before looking at a "learn C++" tutorial.

  • 0

Contribute to Express, an open-source ROBLOX exploit written fully in C.

Posts: 13

Threads: 3

Joined: Jun, 2023

Reputation: 1

Replied

Thanks for your responses.

  • 0

I am a scripter and exploiter that has recently started developing DLLs and learning reverse engineering.

Users viewing this thread:

( Members: 0, Guests: 1, Total: 1 )