Will the expression *p = p be disallowed by the compiler?

Asked by Last Modified  

Follow 0
Answer

Please enter your answer

Test Engineer

No, Because, here even though the value of p is accessed twice it is used to modify two different objects p and *p. i.e. let us take the value of p as 5, the address where p is stored at 100 location. now statement *p=p will override the value 200 with 5 i.e. P location is shifted from 100 to 5.
Comments

Thanks for the question Atharva, No because even though the value of p is accessed twice it is used to modify two different objects p and *p. Thanks, Team DishaaPro www.dishaapro.com
Comments

Compiler should disallow or at the least warn you, As no types were mentioned and given you are de-referencing using *p so presuming p is a pointer, For sake of simplicity, presume p is of type int* ie: int *p; then in statement below, lhs is of type int and rhs is of type int*, you shouldn't ...
read more
Compiler should disallow or at the least warn you, As no types were mentioned and given you are de-referencing using *p so presuming p is a pointer, For sake of simplicity, presume p is of type int* ie: int *p; then in statement below, lhs is of type int and rhs is of type int*, you shouldn't assign int* to an int. *p = p If you really want to do that (hope you understand what you are doing with your memory), then you should force typecast it to (int*), so that compiler doesn't generate a warning. Team SG-Tech.in read less
Comments

View 1 more Answers

Related Questions

How is this site helpful for me? I am looking for a job in the field of Programming in C.
C programming is used mostly for developing drivers, embedded softwares, compilers and more importantly the operating systems themselves for example UNIX OS which is completely written in C language. So...
Profile Photo
Umang
Which computer language will be the most important one in the upcoming years?
JAVA and JAVA script. C language is the basic language, so it will remain same always.
Profile Photo
Dheivanai
how to calculate address of n dimensional matrix
An n dimensional matrix can be of any dimension. Adding a dimension is adding one more index number (to access the element). In 1-D array you the elements are linearly arranged and can be addressed as...
Profile Photo
Rupendra
What is a pragma?
In computer programming, a directive pragma is a language construct that specifies how a compiler should process its input. The ' #pragma ' directive is the method specified by the C standard for providing...
Profile Photo
Anil
What are the toughest topics in C language?
Everything appears easy, but the crucial topics include Pointers, Arrays, 3D Dimensional Arrays, Structures, Functions, and File Handling.
Profile Photo
Kavidassan
0 0
View Comments6

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

Ask a Question

Related Lessons

Functions In C Programming
A C-language program is nothing but collection of Function, these are the building blocks of a ‘C’ program. Generally, a function mans a task. “Function is a...
Profile Photo

Facts about C language
C programming language was developed in 1972 by Dennis Ritchie at AT&T Bell Labs. It was developed to overcome the problems of languages such as B, BPCL. It was developed to write the Unix operating...
Profile Photo

Do You Know How Is Size Of Structure Defined?
Size of the structure is defined based on multiplies of bigger data type member in the structure. Example: If a structure contains integer, char, short data type, then size of the Structure will be multiples...
Profile Photo

Set 0 To Kth Bit In A Variable
The following code snippet Set 0 to Kth Bit in an variable #include int UnsetBitValue(int n, int k);int main(){ printf("%d\n\n",UnsetBitValue(255,6)); return 0;}// Set kth bit to zeroint UnsetBitValue(int...
Profile Photo

C Program-Vowels and Consonants
/*WAP to print the character entered by user is a vowel or consonant*/ //Header files #include<stdio.h>#include<conio.h> //Main functionvoid main(){ char c; //Function for clearing screen...
Profile Photo

Recommended Articles

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 >

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 >

Information technology consultancy or Information technology consulting is a specialized field in which one can set their focus on providing advisory services to business firms on finding ways to use innovations in information technology to further their business and meet the objectives of the business. Not only does...

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