Lecture 10: Elementary Data Types

 0    14 flashcards    up804653
mp3 indir Baskı oynamak kendini kontrol et
 
soru English cevap English
What are the 2 things data types all have?
öğrenmeye başla
[1] a set of allowable values; [2] a set of operations on these values.
what are the typical Elementary Data Types
öğrenmeye başla
[1] numeric (integer and floating point), [2] boolean, [3] character, [4] enumerated, and [5] reference or pointer.
what are Enumerated Types
öğrenmeye başla
[1] Enumerated types are ordinal type that the possible values can be associated with the set of positive integers (In Java, the primitive ordinal types are integer and char). [2] Enumerated types can be user-defined elementary types
What are Pointer Types
öğrenmeye başla
[1] Pointer, or reference, variables have a memory address as their value—we say they “point” to another data item. [2] Pointers are useful in providing a way to manage (allocate and de-allocate) dynamic storage - heap memory.
how is a pointer type declared?
öğrenmeye başla
The declaration: precede a variable name by a “*”: eg int number, *numPtr;
describe the following code " int number, *numPtr; "
öğrenmeye başla
This means, at runtime: [1] number is associated with a location in memory at which an integer is stored. [2][numPtr is associated with a location in memory at which a memory address is stored.
describe the use of & with pointers
öğrenmeye başla
The & operator gives the address of a variable; after executing: number = 42; numPtr = &number; the value of numPtr is the address of variable number.
what is Pointer Dereferencing
öğrenmeye başla
We use the pointer dereferencing operator * to access the value pointed to by a vriable
explain the following code "[1] number = 42; numPtr = &number; [2] printf("%d\n", *numPtr);"
öğrenmeye başla
We use the pointer dereferencing operator * to access the value pointed to by numPtr: printf("%d\n", *numPtr); which here will display 42.
What does null mean?
öğrenmeye başla
A special value null (null is actually stored as a 0) is assigned to any pointer variable to signify that it doesn’t point to any location.
explain the following code " int *p; int *q int a = 100; p=&a; *q = *p; q = p; "
öğrenmeye başla
*q = *p; This copies the contents (100) of the memory location pointed by p to q. whereas q = p; copies the value (a memory address) of p to q.
what does calloc do
öğrenmeye başla
calloc allocates a block of memory of "n elements" of "size" bytes each and initializes contents of memory to zeroes. It contain info for memory organisation.
what does malloc do
öğrenmeye başla
malloc allocate specified size (no organisation info) of memory but does not erase them, therefore the memory may contain garbage values.
what are Dangling Pointers
öğrenmeye başla
pointers that do not point to a memory location due to deallocation

Yorum yapmak için giriş yapmalısınız.