Open In App

Comparing Python with C and C++

Last Updated : 29 Jun, 2022
Improve
Improve
Like Article
Like
Save
Share
Report

In the following article, we will compare the 3 most used coding languages from a beginner’s perspective. It will help you to learn basics of all the 3 languages together while saving your time and will also help you to inter shift from one language you know to the other which you don’t. Let’s discuss a brief history of all the 3 languages and then we will move on to the practical learning.
 

C Vs C++ Vs Python

 

C C++ Python
C was developed by Dennis Ritchie between the year 1969 and 1973 at AT&T Bell Labs. C++ was developed by Bjarne Stroustrup in 1979. Python was created by Guido van Rossum, and released in 1991.
More difficult to write code in contrast to both Python and C++ due to complex syntax. C++ code is less complex than C but more complex in contrast to python. Easier to write code.
Longer lines of code as compared to python. Longer lines of code as compared to python. 3-5 times shorter than equivalent C/C++ programs.
Variables are declared in C. Variables are declared in C++ Python has no declaration.
C is a compiled language. C++ is a compiled language. Python is an interpreted language.
C contains 32 keywords. C++ contains 52 keywords. Python contains 33 keywords.
For the development of code, C supports procedural programming. C++ is known as hybrid language because C++ supports both procedural and object oriented programming paradigms. Python supports multiple programming paradigms, including procedural, object-oriented, and functional programming.
C does not support inheritance. C++ support both single and multiple inheritance Python supports all 5 types of inheritance i.e. single inheritance, multiple inheritance, multilevel inheritance, hierarchical inheritance, and hybrid inheritance
C provides malloc() and calloc() functions for dynamic memory allocation, and free() for memory de-allocation. C++ provides new operator for memory allocation and delete operator for memory de-allocation. Python’s memory allocation and deallocation method is automatic.
Direct support for exception handling is not supported by C. Exception handling is supported by C++. Exception handling is supported by Python.

 

Library and Header files inclusion

Header Files: The files that tell the compiler how to call some functionality (without knowing how the functionality actually works) are called header files. They contain the function prototypes. They also contain Data types and constants used with the libraries. We use #include to use these header files in programs. These files end with .h extension. 
Library: Library is the place where the actual functionality is implemented i.e. they contain function body.
Modules: A module is a file containing Python definitions and statements. A module can define functions, classes, and variables. A module can also include runnable code. Grouping related code into a module makes the code easier to understand and use. Import in python is similar to #include header_file in C/C++. Python modules can get access to code from another module by importing the file/function using import.
 

C




// C program to demonstrate
// adding header file
 
#include <stdio.h>
#include <string.h>


C++




// C++ program to demonstrate
// adding header file
 
#include <iostream>
using namespace std;
#include <math.h>


Python




# Python program to demonstrate
# including modules
 
import tensorflow
 
 
# Including a class
# from existing module
from tensorflow import keras


Main method declaration

Main method declaration is declaring to computer that from here the implementation of my code should be done. The process of declaring main is same in C and C++. As we declare int main where int stands for return type we should have to return something integral at the end of code so that it compiles without error. We can write our code in between the curly braces. 
 

C




// C program to demonstrate
// declaring main
 
#include <stdio.h>
 
int main()
{
 
// Your code here
 
return 0;
}


C++




// C++ program to demonstrate
// declaring main
 
#include <iostream>
 
int main()
{
 
// Your code here
 
return 0;
}


It is not necessary to declare main in python code unless and until you are declaring another function in your code. So we can declare main in python as follows. 
 

Python3




# Python program to demonstrate
# declaring main
 
def main():
    # write your code here
 
if __name__=="__main__":
    main()


Declaring Variables

In C and C++ we first declare the data type of the variable and then declare the name of Variables. A few examples of data types are int, char, float, double, etc.
Python is not “statically typed”. We do not need to declare variables before using them or declare their type. A variable is created the moment we first assign a value to it.
 

C




// C program to demonstrate
// declaring variable
 
#include <stdio.h>
 
int main()
{
    // Declaring one variable at a time
    int a;
 
    // Declaring more than one variable
    char a, b, c, d;
 
    // Initializing variables
    float a = 0, b, c;
    b = 1;
 
    return 0;
}


C++




// C++ program to demonstrate
// declaring variables
 
#include <iostream.h>
 
int main()
{
    // Declaring one variable at a time
    int a;
 
    // Declaring more than one variable
    char a, b, c, d;
 
    // Initializing variables
    float a = 0, b, c;
    b = 1;
  
    return 0;
}


Python




# Python program to demonstrate
# creating variables
  
# An integer assignment
age = 45                     
   
# A floating point
salary = 1456.8            
   
# A string  
name = "John"             


Printing to console

The Syntax for printing something as output is different for all the 3 languages.
 

C




// C program to showing
// how to print data
// on screen
 
#include <stdio.h>
 
int main()
{
   printf("Hello World");
   return 0;
}


C++




// C++ program to showing
// how to print data
// on screen
 
#include <iostream>
using namespace std;
 
int main()
{
    cout << "Hello World";
    return 0;
}


Python




# Python program to showing
# how to print data
# on screen
 
print("Hello World")


Taking Input

The Syntax for taking input from the user is different in all three languages, so let’s see the syntax and write your first basic code in all the 3 languages.
 

C




// C program showing
// how to take input
// from user
 
#include <stdio.h>
 
int main()
{
    int a, b, c;
    printf("first number: ");
    scanf("%d", &a);
 
    printf("second number: ");
    scanf("%d", &b);
 
    c = a + b;
 
    printf("Hello World\n%d + %d = %d", a, b, c);
 
    return 0;
}


C++




// C++ program showing
// how to take input
// from user
 
#include <iostream>
using namespace std;
 
int main()
{
    int a, b, c;
    cout << "first number: ";
    cin >> a;
 
    cout << endl;
    cout << "second number: ";
    cin >> b;
 
    cout << endl;
    c = a + b;
 
    cout << "Hello World" << endl;
    cout << a << "+" << b << "=" << c;
 
    return 0;
}


Python




# Python program showing
# how to take input
# from user
 
a = input("first number: ")
b = input("second number: ")
 
c = a + b
 
print("Hello World")
print(a, "+", b, "=", c)




Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads