What is the difference between #define and constant in C?

Asked by Last Modified  

Follow 0
Answer

Please enter your answer

#define used to define a variable that is pre-processed(before compilation) where as constant is a keyword used to declare constant variable which cannot be varied
Comments

C/C++ & UNIX Shell Scripting Programmer & Tutor

#define is a preprocessor directive and is resolved/replaced before the compilation step. So that means if you have like #define PI 3.42 --- during pre-processing (before compilation) imagine as if the compiler actually does a FIND and REPLACE inside your code and finds PI and replaces it with 3.42....
read more
#define is a preprocessor directive and is resolved/replaced before the compilation step. So that means if you have like #define PI 3.42 --- during pre-processing (before compilation) imagine as if the compiler actually does a FIND and REPLACE inside your code and finds PI and replaces it with 3.42. So there is no way that you can change a value in the program. The constants on the other hand also remain constant throughout the program but hold the memory as well as are resolved at the run time. Let me know if that resolves your query or I can make you understand it the memory way. read less
Comments

Tuitions for Maths,Science

#define A B tells the preproccessor (a part of the compiler) to substitute B wherever it sees A in the code, and it does it before compiling the code. A const variable means that once the variable is set it can't be changed.
Comments

View 1 more Answers

Related Questions

Who is the inventor of C programming?
Dennis Ritchie in the year of 1970 created C Programming language. He is a computer czar also helped to develop the Unix operating system.He died in the year of 2011 on Wednesday at his home in Berkeley Heights, New Jersey
Shreya
0 0
7
The object file is in binary code, and the machine understands the binary language. So why object files are not executed?
Object files are sources compiled into binary machine language, but they do not have library files, so they are not executed.
Dhruvil
0 0
9
What are security issues in the C language?
Some common security issues in C include buffer overflows, which can lead to arbitrary code execution; format string vulnerabilities, which can be exploited to read or write arbitrary memory locations;...
Avinesh
0 0
7
Can an ECE graduate with some knowledge of C language learn SQL?
Yes ECE graduate student learn SQL languuage bcuz SQL is. A structured query language. it all query depends upon the logic. In which table is used Nd database is maitained
Anand
0 0
5
What are the types of linkages in C Programming?
Type of linkage Type of object Accessibility external external throughout the program internal external a single file none internal local to a single function
Akash
0 0
9

Now ask question in any of the 1000+ Categories, and get Answers from Tutors and Trainers on UrbanPro.com

Ask a Question

Related Lessons

C Program-Prime Number
/*WAP to print a number entered by the user is prime or not*/ //Header files #include<stdio.h>#include<conio.h> //Main function void main(){ int num,i; //Function for clearing screen clrscr();...

Programming Practice Technique
Any Programming Language required an Algorithm. Algorithm - It is the finite set of instructions in which each and every instruction has the meaning, instructions are not ambiguous and all the instructions...

C Program-Upper Case Demo
/*WAP to print the character entered by user in upper case*/ //Header files #include<stdio.h>#include<conio.h> //Main function void main(){ char ch; //Function for clearing screen clrscr(); ...

Tress And Its Traversal
Depth First Traversals:(a) Inorder (Left, Root, Right) : 4 2 5 1 3(b) Preorder (Root, Left, Right) : 1 2 4 5 3(c) Postorder (Left, Right, Root) : 4 5 2 3 1 Trees are one of the data structures like...

C Program-Temperature [conversion from farenheit to degree celsius]
//WAP to convert temperture from farenheit into degree celsius //Header files#include<stdio.h>#include<conio.h> //Main functrion void main(){ //Variable declaration of type float float...

Recommended Articles

Brilliant Academy is one of the reputed institutes for B.Tech tuition classes. This institute is specialised in delivering quality tuition classes for B.E, Engineering - all streams and Engineering diploma courses. Incorporated in 2012, Brillant Academy is a brainchild of Mr Jagadeesh. The main motto of the academy is to...

Read full article >

Lasya Infotech is a Hyderabad based IT training institute founded in 2016 by O Venkat. Believing in his innovation, passion and persistence and with a diverse blend of experience, he started his brainchild to deliver exemplary professional courses to aspiring candidates by honing their skills. Ever since the institute envisions...

Read full article >

Applications engineering is a hot trend in the current IT market.  An applications engineer is responsible for designing and application of technology products relating to various aspects of computing. To accomplish this, he/she has to work collaboratively with the company’s manufacturing, marketing, sales, and customer...

Read full article >

Software Development has been one of the most popular career trends since years. The reason behind this is the fact that software are being used almost everywhere today.  In all of our lives, from the morning’s alarm clock to the coffee maker, car, mobile phone, computer, ATM and in almost everything we use in our daily...

Read full article >

Looking for C Language Classes?

Learn from the Best Tutors on UrbanPro

Are you a Tutor or Training Institute?

Join UrbanPro Today to find students near you