From: Steven Baltakatei Sandoval Date: Sun, 7 Aug 2022 21:22:07 +0000 (+0000) Subject: chore(src/):Finish youtube c tutorial X-Git-Url: https://zdv2.bktei.com/gitweb/BK-2023-05.git/commitdiff_plain/240e961e763df9405cd543e29222221cbdd2be4d?hp=4dc7feb9223c1f447a44ad18aa1ae542d8a8a975 chore(src/):Finish youtube c tutorial --- diff --git a/src/20220807T1949Z..test.c b/src/20220807T1949Z..test.c new file mode 100644 index 0000000..b25d659 --- /dev/null +++ b/src/20220807T1949Z..test.c @@ -0,0 +1,34 @@ +/* Desc: For Loops + * Usage: ./test + * Ref/Attrib: [0] C programming tutorial for beginners https://youtu.be/KJgsSFOSQv0?t=10212 + * [1] https://youtu.be/ix5jPkxsr7M?t=3072 + * [2] C: Multiple scanf's, when I enter in a value for one scanf it skips the second scanf https://stackoverflow.com/a/9562355 + */ + + +#include +#include + +int main(){ + + for( int i = 1; i <= 5; i++ ){ + printf("%d\n", i); + }; + printf("Done.\n\n"); + + int luckyNumbers[] = {4, 8, 15, 16, 23, 42}; + for( int i = 0; i < 6; i++ ){ + printf("%d\n", luckyNumbers[i]); + }; + printf("Done.\n\n"); + + return 0; +}; + + + + +/* + * Author: Steven Baltakatei Sandoval + * License: GPLv3+ + */ diff --git a/src/20220807T1959Z..test.c b/src/20220807T1959Z..test.c new file mode 100644 index 0000000..a079f4d --- /dev/null +++ b/src/20220807T1959Z..test.c @@ -0,0 +1,36 @@ +/* Desc: 2D Arrays & Nested Loops + * Usage: ./test + * Ref/Attrib: [0] C programming tutorial for beginners https://youtu.be/KJgsSFOSQv0?t=2h59m5s + * [1] https://youtu.be/ix5jPkxsr7M?t=3072 + * [2] C: Multiple scanf's, when I enter in a value for one scanf it skips the second scanf https://stackoverflow.com/a/9562355 + */ + + +#include +#include + +int main(){ + + int nums[3][2] = { + {1, 2}, + {3, 4}, + {5, 6} + }; + + for(int i = 0; i < 3; i++){ + for(int j = 0; j < 2; j++){ + printf("%d,", nums[i][j]); + }; + printf("\n"); + }; + + return 0; +}; + + + + +/* + * Author: Steven Baltakatei Sandoval + * License: GPLv3+ + */ diff --git a/src/20220807T2010Z..test.c b/src/20220807T2010Z..test.c new file mode 100644 index 0000000..a3512c6 --- /dev/null +++ b/src/20220807T2010Z..test.c @@ -0,0 +1,46 @@ +/* Desc: Memory Addresses + * Usage: ./test + * Ref/Attrib: [0] C programming tutorial for beginners https://youtu.be/KJgsSFOSQv0?t=3h9m11s + * [1] https://youtu.be/ix5jPkxsr7M?t=3072 + * [2] C: Multiple scanf's, when I enter in a value for one scanf it skips the second scanf https://stackoverflow.com/a/9562355 + */ + + +#include +#include + +int main(){ + + int age = 30; + double gpa = 3.4; + char grade = 'A'; + + printf("age : %d\n", age); + printf("gpa : %f\n", gpa); + printf("grade : %c\n", grade); + printf("%p : age\n", &age); + printf("%p : gpa\n", &gpa); + printf("%p : grade\n", &grade); + age = 31; + gpa = 3.5; + grade = 'B'; + printf("Done.\n\n"); + + printf("age : %d\n", age); + printf("gpa : %f\n", gpa); + printf("grade : %c\n", grade); + printf("%p : age\n", &age); + printf("%p : gpa\n", &gpa); + printf("%p : grade\n", &grade); + printf("Done.\n\n"); + + return 0; +}; + + + + +/* + * Author: Steven Baltakatei Sandoval + * License: GPLv3+ + */ diff --git a/src/20220807T2021Z..test.c b/src/20220807T2021Z..test.c new file mode 100644 index 0000000..efa1ac6 --- /dev/null +++ b/src/20220807T2021Z..test.c @@ -0,0 +1,37 @@ +/* Desc: Pointers + * Usage: ./test + * Ref/Attrib: [0] C programming tutorial for beginners https://youtu.be/KJgsSFOSQv0?t=3h17m22s + * [1] https://youtu.be/ix5jPkxsr7M?t=3072 + * [2] C: Multiple scanf's, when I enter in a value for one scanf it skips the second scanf https://stackoverflow.com/a/9562355 + */ + +#include +//#include + +int main(){ + + int age = 30; + int * pAge = &age; + double gpa = 3.4; + double * pGpa = &gpa; + char grade = 'A'; + char * pGrade = &grade; + + printf("age's memory address: %p\n", &age); + printf("age's memory address: %p\n", pAge); + printf("gpa's memory address: %p\n", &gpa); + printf("gpa's memory address: %p\n", pGpa); + printf("grade's memory address: %p\n", &grade); + printf("grade's memory address: %p\n", pGrade); + + printf("\n\nDone.\n\n"); + return 0; +}; + + + + +/* + * Author: Steven Baltakatei Sandoval + * License: GPLv3+ + */ diff --git a/src/20220807T2028Z..test.c b/src/20220807T2028Z..test.c new file mode 100644 index 0000000..9ae7c13 --- /dev/null +++ b/src/20220807T2028Z..test.c @@ -0,0 +1,32 @@ +/* Desc: Dereferencing Pointers + * Usage: ./test + * Ref/Attrib: [0] C programming tutorial for beginners https://youtu.be/KJgsSFOSQv0?t=3h27m43s + * [1] https://youtu.be/ix5jPkxsr7M?t=3072 + * [2] C: Multiple scanf's, when I enter in a value for one scanf it skips the second scanf https://stackoverflow.com/a/9562355 + */ + +#include +//#include + +int main(){ + + int age = 30; + int *pAge = &age; + + printf("%p\n", pAge); // memory address of age + printf("%d\n", *pAge); // dereferenced value of memory address of age interpreted as integer + printf("%d\n", *&age); // dereferenced value of memory address of age interpreted as integer + printf("%p\n", &*&age); // memory address of dereferenced value of memory address of age interpreted as integer + printf("%d\n", *&*&age); // dereferenced value of memory address of dereferenced value of memory address of age interpreted as integer + + printf("\n\nDone.\n\n"); + return 0; +}; + + + + +/* + * Author: Steven Baltakatei Sandoval + * License: GPLv3+ + */ diff --git a/src/20220807T2052Z..test.c b/src/20220807T2052Z..test.c new file mode 100644 index 0000000..9e23db2 --- /dev/null +++ b/src/20220807T2052Z..test.c @@ -0,0 +1,45 @@ +/* Desc: Writing Files + * Usage: ./test + * Ref/Attrib: [0] C programming tutorial for beginners https://youtu.be/KJgsSFOSQv0?t=3h32m38s + * [1] https://youtu.be/ix5jPkxsr7M?t=3072 + * [2] C: Multiple scanf's, when I enter in a value for one scanf it skips the second scanf https://stackoverflow.com/a/9562355 + */ + +#include +//#include + +int main(){ + + // File modes + // r : read + // w : write + // a : append + + FILE * fpointer = fopen( "employees.txt", "w" ); + printf("%p : fpointer address - file opened\n", fpointer); + fprintf(fpointer, "Jim, Salesman\nPam, Receptionist\nOscar, Accounting\n"); + printf("%p : fpointer address - file written\n", fpointer); + fclose(fpointer); + printf("%p : fpointer address - file closed\n", fpointer); + + fpointer = fopen( "employees.txt", "a" ); + printf("%p : fpointer address - file opened\n", fpointer); + fprintf(fpointer, "Kelly, Customer Service\n"); + printf("%p : fpointer address - file appended\n", fpointer); + + + + + fclose(fpointer); + printf("%p : fpointer address - file closed\n", fpointer); + printf("\n\nDone.\n\n"); + return 0; +}; + + + + +/* + * Author: Steven Baltakatei Sandoval + * License: GPLv3+ + */ diff --git a/src/20220807T2121Z..test.c b/src/20220807T2121Z..test.c new file mode 100644 index 0000000..f3305c9 --- /dev/null +++ b/src/20220807T2121Z..test.c @@ -0,0 +1,46 @@ +/* Desc: Reading Files + * Usage: ./test + * Ref/Attrib: [0] C programming tutorial for beginners https://youtu.be/KJgsSFOSQv0?t=3h41m54s + * [1] https://youtu.be/ix5jPkxsr7M?t=3072 + * [2] C: Multiple scanf's, when I enter in a value for one scanf it skips the second scanf https://stackoverflow.com/a/9562355 + * [3] File Positioning https://www.gnu.org/software/libc/manual/html_node/File-Positioning.html + */ + +#include +//#include + +int main(){ + + int fposition; + char line[255]; + FILE *fpointer = fopen("employees.txt", "r"); + + printf("%p : fpointer address\n", fpointer); + fgets(line, 255, fpointer); + fposition = ftell(fpointer); // See [3] + printf("%d : fposition\n", fposition); + + printf("%p : fpointer address\n", fpointer); + printf("%s", line); + + printf("%p : fpointer address\n", fpointer); + fgets(line, 255, fpointer); + fposition = ftell(fpointer); + printf("%d : fposition\n", fposition); + + printf("%p : fpointer address\n", fpointer); + printf("%s", line); + + printf("%p\n : fpointer address\n", fpointer); + fclose(fpointer); + printf("\n\nDone.\n\n"); + return 0; +}; + + + + +/* + * Author: Steven Baltakatei Sandoval + * License: GPLv3+ + */ diff --git a/src/employees.txt b/src/employees.txt new file mode 100644 index 0000000..dd826b8 --- /dev/null +++ b/src/employees.txt @@ -0,0 +1,4 @@ +Jim, Salesman +Pam, Receptionist +Oscar, Accounting +Kelly, Customer Service diff --git a/src/test b/src/test index 6008fa6..148c89e 100755 Binary files a/src/test and b/src/test differ diff --git a/src/test.c b/src/test.c index 20f3c5d..f3305c9 100644 --- a/src/test.c +++ b/src/test.c @@ -1,16 +1,39 @@ -/* Desc: For Loops +/* Desc: Reading Files * Usage: ./test - * Ref/Attrib: [0] C programming tutorial for beginners https://youtu.be/KJgsSFOSQv0?t=10212 + * Ref/Attrib: [0] C programming tutorial for beginners https://youtu.be/KJgsSFOSQv0?t=3h41m54s * [1] https://youtu.be/ix5jPkxsr7M?t=3072 * [2] C: Multiple scanf's, when I enter in a value for one scanf it skips the second scanf https://stackoverflow.com/a/9562355 + * [3] File Positioning https://www.gnu.org/software/libc/manual/html_node/File-Positioning.html */ - #include -#include +//#include int main(){ + + int fposition; + char line[255]; + FILE *fpointer = fopen("employees.txt", "r"); + + printf("%p : fpointer address\n", fpointer); + fgets(line, 255, fpointer); + fposition = ftell(fpointer); // See [3] + printf("%d : fposition\n", fposition); + + printf("%p : fpointer address\n", fpointer); + printf("%s", line); + + printf("%p : fpointer address\n", fpointer); + fgets(line, 255, fpointer); + fposition = ftell(fpointer); + printf("%d : fposition\n", fposition); + printf("%p : fpointer address\n", fpointer); + printf("%s", line); + + printf("%p\n : fpointer address\n", fpointer); + fclose(fpointer); + printf("\n\nDone.\n\n"); return 0; };