Pointers and Arrays
Intro Video
Funtions for Arrays
Static and Dynamic Arrays
Why do we need to pass size
Pointer Arithmatic
Resizing Arrays
copy over the files provided for you add the code described in the comments to main1.cpp add the code to perform each action directly under each comment
File: main1.cpp
// static arrays versus dynamic arrays
#include "cmpslib19.h"
#include "easylogging++.h"
INITIALIZE_EASYLOGGINGPP
void PrintArray(int*array,int size)
{
LOG(INFO) << "Start " << __PRETTY_FUNCTION__ << endl;
cout << "Array Address" << array << endl;
for(int loop =0; loop<size; loop++)
{
if(loop)
{
cout << ",";
}
cout << array[loop];
}
cout << endl;
LOG(INFO) << "End " << __PRETTY_FUNCTION__ << endl;
}
int main()
{
InitializeLogger("main1.log");
// create a static int array of size 20 named SIntArray
// create a dynamic int array of size 20 named DIntArray
// use a for loop to populate both arrays with the values 0-19 , use the [] operator
// use the PrintArray functions to print them both out
//use a for loop to populate both arrays with the values 0 to 100 in increments of 5
// loop from 0 to 19 and set the value to (loop*5)
// 0*5, 1*5, 2*5
// , do not use the [] operator
// use the PrintArray functions to print both arrays
// print out the address of the first , second and fifth element of both arrays, use the & and [] operators
// print out the address of the first , second and fifth element of both arrays, do NOT use the & and [] operators
// create an int * temp
// set temp to the begining of SIntArray
// increment temp pointer by 4
// print out the value ( address ) of temp and the value it points to
// set temp to the begining of DIntArray
// increment the pointer by 4
// print out the value ( address ) of temp and the value it points to
// clean up the Dynamic array
return 0;
}
use the runable example as a guide
File: sample_output
SIntArray:
Array Address0x7fffc955f750
0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19
DIntArray:
Array Address0x55a10d84c7d0
0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19
SIntArray:
Array Address0x7fffc955f750
0,5,10,15,20,25,30,35,40,45,50,55,60,65,70,75,80,85,90,95
DIntArray:
Array Address0x55a10d84c7d0
0,5,10,15,20,25,30,35,40,45,50,55,60,65,70,75,80,85,90,95
SIntArray:
1st:0x7fffc955f750
2nd:0x7fffc955f754
5th:0x7fffc955f760
DIntArray:
1st:0x55a10d84c7d0
2nd:0x55a10d84c7d4
5th:0x55a10d84c7e0
SIntArray:
1st:0x7fffc955f750
2nd:0x7fffc955f754
5th:0x7fffc955f760
DIntArray:
1st:0x55a10d84c7d0
2nd:0x55a10d84c7d4
5th:0x55a10d84c7e0
temp contains the address 0x7fffc955f760 and points to the value 20
temp contains the address 0x55a10d84c7e0 and points to the value 20
to get a good grade ------------------ 1. make sure your code compiles without warnings 2. make sure your output matches the example 3. if a comment says to do something , do it right below that comment line 4. at the VERY LEAST log the start and end of all functions