summaryrefslogtreecommitdiffhomepage
path: root/c.html.markdown
diff options
context:
space:
mode:
Diffstat (limited to 'c.html.markdown')
-rw-r--r--c.html.markdown33
1 files changed, 17 insertions, 16 deletions
diff --git a/c.html.markdown b/c.html.markdown
index 3d632eab..8226ddef 100644
--- a/c.html.markdown
+++ b/c.html.markdown
@@ -76,7 +76,7 @@ int main (int argc, char** argv)
///////////////////////////////////////
// Types
///////////////////////////////////////
-
+
// All variables MUST be declared at the top of the current block scope
// we declare them dynamically along the code for the sake of the tutorial
@@ -148,15 +148,10 @@ int main (int argc, char** argv)
printf("Enter the array size: "); // ask the user for an array size
int size;
fscanf(stdin, "%d", &size);
- char buf[size];
- fgets(buf, sizeof buf, stdin);
-
- // strtoul parses a string to an unsigned integer
- size_t size2 = strtoul(buf, NULL, 10);
- int var_length_array[size2]; // declare the VLA
+ int var_length_array[size]; // declare the VLA
printf("sizeof array = %zu\n", sizeof var_length_array);
- // A possible outcome of this program may be:
+ // Example:
// > Enter the array size: 10
// > sizeof array = 40
@@ -318,6 +313,12 @@ int main (int argc, char** argv)
case 1:
printf("Huh, 'a' equals 1!\n");
break;
+ // Be careful - without a "break", execution continues until the
+ // next "break" is reached.
+ case 3:
+ case 4:
+ printf("Look at that.. 'a' is either 3, or 4\n");
+ break;
default:
// if `some_integral_expression` didn't match any of the labels
fputs("error!\n", stderr);
@@ -345,8 +346,8 @@ int main (int argc, char** argv)
https://ideone.com/GuPhd6
this will print out "Error occured at i = 52 & j = 99."
*/
-
-
+
+
///////////////////////////////////////
// Typecasting
///////////////////////////////////////
@@ -445,7 +446,7 @@ int main (int argc, char** argv)
for (xx = 0; xx < 20; xx++) {
*(my_ptr + xx) = 20 - xx; // my_ptr[xx] = 20-xx
} // Initialize memory to 20, 19, 18, 17... 2, 1 (as ints)
-
+
// Note that there is no standard way to get the length of a
// dynamically allocated array in C. Because of this, if your arrays are
// going to be passed around your program a lot, you need another variable
@@ -721,13 +722,13 @@ typedef void (*my_fnp_type)(char *);
/******************************* Header Files **********************************
-Header files are an important part of c as they allow for the connection of c
-source files and can simplify code and definitions by seperating them into
+Header files are an important part of c as they allow for the connection of c
+source files and can simplify code and definitions by seperating them into
seperate files.
-Header files are syntaxtically similar to c source files but reside in ".h"
-files. They can be included in your c source file by using the precompiler
-command #include "example.h", given that example.h exists in the same directory
+Header files are syntaxtically similar to c source files but reside in ".h"
+files. They can be included in your c source file by using the precompiler
+command #include "example.h", given that example.h exists in the same directory
as the c file.
*/