C, C++, Java; A Programming MegaPrimer for Beginners
What is this MegaPrimer?
We wanted to introduce a package of series that can give a great start to beginner in programming, so we decided to combine the most powerful, popular and mandatory topics of coding. When anyone start a journey to programming life; C, C++ and java are must to learn languages. We have named this beginners programming bundle as MegaPrimer.
What am I going to get from this MegaPrimer?
Complete C programming Course:
C programming is the root or foundation for any person who wants to master computer programming. Learning C in a comprehensive manner is very essential for every software interested soul but things can only be interesting when words are not jargon and every piece of code is explained in detailed manner and that’s what this course is all about.
Complete C++ programming Course:
C++ is an Object oriented programming language that can be used to create modern desktop software, game development or even critical system drivers too. You will find out that most trading applications are designed in C++ because in trading speed is money. When we get into the game development, c++ programming is hard to avoid if you want to create a fantastic and popular game.
In this entire c++ video series, we start from installing gcc on our system. After gcc, we will install Eclipse which is a cross platform IDE because most efficient programmers don’t develop things on notepad. And yes, we don’t like to talk about here and there so expect pure c++ programming guide with everything explained code by code and that too practically.
Complete Java programming Course:
Java is the most popular, powerful and highest job oriented programming language so far. Consulting, not just one or two, in fact any top survey for “Job oriented market for programmers”, you will find that java is always there in top 3 position. After the implementation of java in android projects, a new job market got opened up. Java is diverse enough to build Mobile applications, android application, Desktop application or even Web application.
Installing Environment for C coding
It is important to understand the installation of environment to learn C. This video will help you to install all requirements to compile and run C on Windows. This video also talk about online compilers which will be useful for MAC users. Although the IDE used is a cross platform and can be easily installed on MAC.
In this lecture we will take a look to set up our environment on MAC. We will take eclipse as our environment and will install it. After installing the eclipse, rest of the coding and code writing technique is same as on windows.
Before we study basic building blocks of the C programming language, let us look a bare minimum C program structure
A C program consists of various tokens and a token is either a keyword, an identifier, a constant, a string literal, or a symbol
Integer Variable and constants in C programming
Here is the downloadable file, used in this course. Hope it will be a booster in learning C programming language
In the C programming language, data types refer to an extensive system used for declaring variables or functions of different types. The type of a variable determines how much space it occupies in storage and how the bit pattern stored is interpreted.
The second data type in C programming is float which allows to store decimal values in C programming. Learn more about float in this video
Some data types are not integer or even float. They are called as void which means empty or nothing
A variable is nothing but a name given to a storage area that our programs can manipulate. Each variable in C has a specific type, which determines the size and layout of the variable's memory; the range of values that can be stored within that memory; and the set of operations that can be applied to the variable.
The constants are treated just like regular variables except that their values cannot be modified after their definition.
There are two simple ways in C to define constants:
- Using #define preprocessor.
- Using const keyword.
There are certain characters in C when they are preceded by a backslash they will have special meaning and they are used to represent like newline (n) or tab (t). Here, you have a list of some of such escape sequence codes:
When we are saying Input that means to feed some data into program. This can be given in the form of file or from command line.
Operation and Conditionals in C programming
This video will help you to understand arithmetic operations in c coding. There are many simple operations like addition, subtraction which are performed in C programming
This video will help you to understand relational operations in C coding
there are many logical operations which can make life easier in c coding. This video will help you to understand various logical operations
learn to handle bitwise operations in C programming in this video tutorial of c programming
learn the syntax and usage of if and else-if in c programming
The switch and case statements are very useful in c programming. learn the syntax and code example of switch case statement in c programming in this video
Loops and Functions in C programming
There may be a situation, when you need to execute a block of code several number of times. In general, statements are executed sequentially: The first statement in a function is executed first, followed by the second, and so on.
Unlike for and while loops, which test the loop condition at the top of the loop, the do...while loop in C programming language checks its condition at the bottom of the loop.
A for loop is a repetition control structure that allows you to efficiently write a loop that needs to execute a specific number of times.
Loop control statements change execution from its normal sequence. When execution leaves a scope, all automatic objects that were created in that scope are destroyed.
A function declaration tells the compiler about a function's name, return type, and parameters. A function definition provides the actual body of the function.
While calling a function, there are two ways that arguments can be passed to a function:
Call by value:This method copies the actual value of an argument into the formal parameter of the function. In this case, changes made to the parameter inside the function have no effect on the argument.
Call by reference:This method copies the address of an argument into the formal parameter. Inside the function, the address is used to access the actual argument used in the call. This means that changes made to the parameter affect the argument.
Array, pointer, structure and memory in C programming
C programming language provides a data structure called the array, which can store a fixed-size sequential collection of elements of the same type. An array is used to store a collection of data, but it is often more useful to think of an array as a collection of variables of the same type.
C programming language allows multidimensional arrays. Here is the general form of a multidimensional array declaration
Pointers in C are easy and fun to learn. Some C programming tasks are performed more easily with pointers, and other tasks, such as dynamic memory allocation, cannot be performed without using pointers. So it becomes necessary to learn pointers to become a perfect C programmer.
A pointer to a pointer is a form of multiple indirection, or a chain of pointers. Normally, a pointer contains the address of a variable. When we define a pointer to a pointer, the first pointer contains the address of the second pointer, which points to the location that contains the actual value
The string in C programming language is actually a one-dimensional array of characters which is terminated by a null character ''. Thus a null-terminated string contains the characters that comprise the string followed by a null.
C arrays allow you to define type of variables that can hold several data items of the same kind butstructure is another user defined data type available in C programming, which allows you to combine data items of different kinds
A file represents a sequence of bytes, does not matter if it is a text file or binary file. C programming language provides access on high level functions as well as low level (OS level) calls to handle file on your storage devices
As such C programming does not provide direct support for error handling but being a system programming language, it provides you access at lower level in the form of return values. Most of the C or even Unix function calls return -1 or NULL in case of any error and sets an error code errno is set which is global variable and indicates an error occurred during any function call. You can find various error codes defined in <error.h> header file.
The C programming language provides several functions for memory allocation and management. These functions can be found in the<stdlib.h> header file.
It is possible to pass some values from the command line to your C programs when they are executed. These values are called command line arguments and many times they are important for your program specially when you want to control your program from outside instead of hard coding those values inside the code.
Conclusion for c programming
Conclusion for what we have learn so for in c programming
Installing environment for C plus plus
GCC is a compiler used to compile and run, C and C++ programs. C++ programs are known as source code and need to be converted into binaries to run. In order to do this, we need to convert source code into binaries and GCC helps us to do that.
When you want to run C++ programs, Eclipse needs a few extra steps to be performed. In this lecture you will learn those steps and from this lecture onwards, you will be able to run c++ programs on eclipse.
When you run your c++ programs via eclipse, you need to built your binaries because c++ is a compile language. In this lecture you will learn about building your project that is also known as compiling the project and then run the project.
We have already seen from the last movie, that how we can run a hello world program in eclipse. In this movie, we will take a closer look on each line and it's working in the c++ environment.
With c++, there are some default key words like for, int, while etc. that you cannot use in your programming. Along the learning process of coding, you will learn more about the reserve keywords. It is always recommended that you should give meaning full name to your variables to avoid confliction. There are also some rules and regulation for defining name for your variables.
Datatypes, variable and constants in c plus plus
Check the attachment in this lecture to get exercise files.
C++ allows you to work with variety of data types like integer values, decimal values, string values and others. in this lecture, we will take a close look on dealing with different types of data.
Variable is a name given to fixed memory space that is reserved for one or the other data type that a programer is about to use. As the name says, variable that means that can vary. Variables can store different type of data but in c++, you have to first mention the type of data.
A variable is may or may not be accessible to different section of code. this access or restriction of variable visibility is know as variable scope. Local variable have only local scope means that can be access within the code block but global variable has access to all section of code of that program.
C++ allows you to make any variable to be acing as a constant value. In this lecture, those two methods are defined. One is using the const keyword and second is using the preprocessor statement.
Integer and float are the numerical values that are used for various calculation in programming. Character constants are some special character which when followed by back slash as a special functional symbol. for example in cout if you write back slash n, then it act as a new line character.
values in c++ can be signed and unsigned. Means that some values in c++ have positive and negative signs and some don't. It is fairly important to understand the difference between two otherwise you might change your actual value without knowing about the consequences to your code.
Operations and conditionals in C plus plus
C++ allows you to perform a variety of math operation in your code. These math operations are known as Arithmetic operations in c++. This includes addition, subtraction, multiplication, division, modulus and variety of such operations.
Relational operation in c++ are those operations that gives the idea about relation between two values, for example the relation operations might be used to check the greater value among the two operations.
AND, OR and NOT are know as logical operations in c++. These operations allows you to check two conditions at the same time. Depending on using AND or OR, you can choose which condition matters to your code the most or both condition matter to you
Assignment operation are done with operators that are made up with the help of equal operator. Apart from double equal operator, all the other operators that assigns the value in some variable, can be treated as assignment operator.
A code need to test a variety of condition and for the If and Else keywords are used. These keywords let the code to test the condition and after that, program can decide, which code block to execute and what can be left.
If and Else are great way to test the condition in programming but these are not good option when we to pass only one condition from 200 cases. For such condition, Switch and case are used. Switch and case allows you to test from several condition and if non of them is passed, you can mention the default case too.
The question mark and colon operator are treated as shorthand for If and Else operations. Although these operations are not highly qualified for much longer condition but they make short code even shorter.
Loops and loop control keywords in C plus plus
looping or iteration is a valuable technique in programming. When we want to perform a task more than once, then we can loop through that task for a particular condition. While loop is one of the basic loop to perform such iteration.
The do while loop performs the exact same task as of while loop. The only major difference is that, in while loop the condition is tested first and in do-while loop the condition is testing after the first execution. So, our loop is going to run the task at least one time.
The most famous loop of all time in C++ is for loop. It has a simpler syntax as compared to other loops. You can initialize the variable, put the condition and do the increment and decrement in same line. If you will check out the most programs in c++, for loop is the most common to be found.
Break keyword is used to throw the processing of program outside a code block. We have already seen the working of break keyword in switch and break video, but same can be used in looping too.
Continue is another important keyword used to just skip the flow of program for a particular condition. Continue just put the execution of program in the beginning for a given condition.
GOTO keyword is used to place the flow of program to a given and specific point. Goto allows to mention the tag, where you can throw the execution of program.
Functions and arrays in C plus plus
Function is a set of statements being wrapped up to be used at latter time. Use of function saves a lot of time for a programmer. You can put the working of any specific task and put that inside a function. Now, whenever you the same task to be performed, you can simple call that functionality in just one line.
Function calls are bit tricky in c++. Whenever you call any function in c++, the arguments inside that function are not passed directly, instead a copy of those arguments are passed. Thus, whenever you make any changes to those variables, change is only made to the copy of variable and original variable are still safe. To overcome this situation, we need to learn about references.
You can pass default values to be set for a particular variable via functions. In case, the user didn't passed any values to the function parameters, then you can set default values to the parameter too.
In c++, there are many default built in math functions that you can use in your programs. The typical calculation such as sine or cosine functions are present in c++. You just need to import the library functions and can use those functions in your program
Array is a sequential collection of same type of data. Array allows you to allocate sequence of memory that you can use to allocate same type of data. The lowest memory allocation is known as the first element of array and highest memory allocation is known as last member of array.
Multi dimensional array is also one the popular concept in the array. Although the memory allocates the same space as asked by the user in the form of m*n form, but user can display the array in such a manner that it gives a feel of allocating 2 or multi dimensional space from memory.
String, pointers and taking input from users in c plus plus
Strings are very powerful in c++. C++ allows you to do a variety of stuff with string by importing the string library. You can add two string that mean concatenation, you can get the first few letter of string, sum up two stings into one string and variety of such things can be performed.
Pointers are special type of variables used to hold the address values of any variable. The value of pointer is same as the value of variable because it is just pointing to the address of variable, but pointer is not directly storing that value, it is just storing the address.
If you want to store no value into the pointer then it a good practice to store NULL into the pointer. Null means nothing, not even the zero is there. But when you will try to print the value of a pointer with NULL value, it will print as zero. But in real it is just a display.
So far, we are only trying to hard code the value. That means we are not interacting with the value. C++ allows us to take the value from the user and put it into any variable. This can be done easily by the cin command.
OOPS in c plus plus
When we talk about OOP or Object Oriented Programming, Classes and Objects are obvious to be in role. Classes are the bluprint or design. Once we have design ready, we can replicate the design and create many objects from it. learn more about objects and classes in this lecture.
Since classes are the blueprint, then it is a good practice to just put some functional working into the classes. You can put the function and it's working definition into the class and can be replicated into many objects or object calls.
Let us take a look on access modifier in c++. These are Public, private and protected. These access specificiers are used to set boundaries for availability of members of class.
Constructor is a default function that is executed every time, when you create an object from an class. The name of the constructor is same as the name of class. Constructors don't have any datatype and not even void. When the object role is completed then destructor is called to destroy the object and free the memory.
Friend is a keyword in c++, when used before any function declaration in class, then that function working can be declared outside the class without making that function a member of the class.
C++ inline function is powerful concept that is commonly used with classes. If a function is inline, the compiler places a copy of the code of that function at each point where the function is called at compile time.
Every object in C++ has access to its own address through an important pointer called this pointer. Thethis pointer is an implicit parameter to all member functions. Therefore, inside a member function, this may be used to refer to the invoking object.
Inheritance, polymorphism and abstraction in c plus plus
One of the most important concepts in object-oriented programming is that of inheritance. Inheritance allows us to define a class in terms of another class, which makes it easier to create and maintain an application. This also provides an opportunity to reuse the code functionality and fast implementation time.
A C++ class can inherit members from more than one class. When there is more than one parent class for a child class is known as multiple inheritance in c++.
C++ allows you to specify more than one definition for a function name or an operator in the same scope, which is called function overloading and operator overloading respectively.
The word polymorphism means having many forms. Typically, polymorphism occurs when there is a hierarchy of classes and they are related by inheritance.
Deleting a derived class object using a pointer to a base class that has a non-virtual destructor results in undefined behavior. To correct this situation, the base class should be defined with a virtual destructor.
Encapsulation is an Object Oriented Programming concept that binds together the data and functions that manipulate the data, and that keeps both safe from outside interference and misuse. Data encapsulation led to the important OOP concept of data hiding.
This tutorial will teach you how to read and write from a file. This requires another standard C++ library called fstream, which can help you to work on files in c++.