]> zdv2.bktei.com Git - BK-2023-05.git/commitdiff
chore(src/):Finish youtube c tutorial
authorSteven Baltakatei Sandoval <baltakatei@gmail.com>
Sun, 7 Aug 2022 21:22:07 +0000 (21:22 +0000)
committerSteven Baltakatei Sandoval <baltakatei@gmail.com>
Sun, 7 Aug 2022 21:22:07 +0000 (21:22 +0000)
src/20220807T1949Z..test.c [new file with mode: 0644]
src/20220807T1959Z..test.c [new file with mode: 0644]
src/20220807T2010Z..test.c [new file with mode: 0644]
src/20220807T2021Z..test.c [new file with mode: 0644]
src/20220807T2028Z..test.c [new file with mode: 0644]
src/20220807T2052Z..test.c [new file with mode: 0644]
src/20220807T2121Z..test.c [new file with mode: 0644]
src/employees.txt [new file with mode: 0644]
src/test
src/test.c

diff --git a/src/20220807T1949Z..test.c b/src/20220807T1949Z..test.c
new file mode 100644 (file)
index 0000000..b25d659
--- /dev/null
@@ -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 <stdio.h>
+#include <stdlib.h>
+
+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 (file)
index 0000000..a079f4d
--- /dev/null
@@ -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 <stdio.h>
+#include <stdlib.h>
+
+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 (file)
index 0000000..a3512c6
--- /dev/null
@@ -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 <stdio.h>
+#include <stdlib.h>
+
+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 (file)
index 0000000..efa1ac6
--- /dev/null
@@ -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 <stdio.h>
+//#include <stdlib.h>
+
+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 (file)
index 0000000..9ae7c13
--- /dev/null
@@ -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 <stdio.h>
+//#include <stdlib.h>
+
+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 (file)
index 0000000..9e23db2
--- /dev/null
@@ -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 <stdio.h>
+//#include <stdlib.h>
+
+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 (file)
index 0000000..f3305c9
--- /dev/null
@@ -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 <stdio.h>
+//#include <stdlib.h>
+
+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 (file)
index 0000000..dd826b8
--- /dev/null
@@ -0,0 +1,4 @@
+Jim, Salesman
+Pam, Receptionist
+Oscar, Accounting
+Kelly, Customer Service
index 6008fa64ebe0dd585a173aba1486e86b6269411b..148c89ef97114c5bb631869b081a5a27826c57cf 100755 (executable)
Binary files a/src/test and b/src/test differ
index 20f3c5d301db117a62746371177a0a12b9345697..f3305c9abbc60fe2ff42ddc59b3d011167874d2b 100644 (file)
@@ -1,16 +1,39 @@
-/* Desc: For Loops
+/* Desc: Reading Files
  * Usage: ./test
  * 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
  *             [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 <stdio.h>
 #include <stdio.h>
-#include <stdlib.h>
+//#include <stdlib.h>
 
 int main(){
 
 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;
 };
 
   return 0;
 };