Difference between revisions of "C-and-C++/C2/First-C-Program/English-timed"
From Script | Spoken-Tutorial
| (17 intermediate revisions by 7 users not shown) | |||
| Line 2: | Line 2: | ||
|'''Time''' | |'''Time''' | ||
| − | |||
|'''Narration''' | |'''Narration''' | ||
| − | |||
|- | |- | ||
| − | | 00 | + | | 00:01 |
| − | | | + | | Welcome to the spoken tutorial on '''First C program'''. |
|- | |- | ||
| − | | 00 | + | | 00:05 |
| − | | | + | | In this tutorial, we will learn |
|- | |- | ||
| − | | 00 | + | | 00:08 |
| − | | | + | | How to write a simple C program |
|- | |- | ||
| − | | 00 | + | | 00:11 |
| − | | | + | | How to compile it |
|- | |- | ||
| − | | 00 | + | | 00:13 |
| − | | | + | | How to execute it We will also explain some common errors and their solutions. |
|- | |- | ||
| − | | 00 | + | |00:18 |
| − | | | + | | To record this tutorial, I am using |
|- | |- | ||
| − | |00 | + | | 00:21 |
| − | | | + | |Ubuntu operating system version 11.10 and gcc Compiler version 4.6.1 on Ubuntu. |
|- | |- | ||
| − | | 00 | + | | 00:31 |
| − | | | + | | To practice this tutorial, |
|- | |- | ||
| − | | 00 | + | | 00:33 |
| − | | | + | |You should be familiar with Ubuntu Operating System and an Editor. |
|- | |- | ||
| − | | 00 | + | | 00:38 |
| − | | | + | |Some editors are '''vim''' and '''gedit'''. |
|- | |- | ||
| − | | 00 | + | | 00:42 |
| − | | | + | |I will use 'gedit' in this tutorial. |
|- | |- | ||
| − | | 00 | + | | 00:45 |
| − | | | + | |For relevant tutorials please visit our website which is as shown. http://spoken-tutorial.org |
|- | |- | ||
| − | | 00 | + | |00:51 |
| − | | | + | | Let me tell you how to write a C program through an example. |
|- | |- | ||
| − | |00 | + | | 00:55 |
| − | | | + | |Open the terminal window by pressing '''Ctrl, Alt and T '''keys simultaneously on your keyboard. |
|- | |- | ||
| − | | | + | | 01:07 |
| − | | | + | | Now let's open the text editor. So, at the prompt, type |
|- | |- | ||
| − | | 01 | + | | 01:12 |
| − | | | + | |'''“gedit”''' space '''“talk”''' dot '''“c”''' space “&”''' sign. |
|- | |- | ||
| − | | 01 | + | | 01:20 |
| − | |''' | + | |'''We use ampersand (&) to free up the prompt. ''' |
|- | |- | ||
| − | | 01 | + | | 01:24 |
| − | | | + | | Please note that all the '''C''' files will have extension '''“.c”'''(dot C). |
|- | |- | ||
| − | | 01 | + | |01:30 |
| − | | | + | | Now Press '''Enter''', |
|- | |- | ||
| − | |01 | + | | 01:32 |
| − | | | + | | the text editor has opened. |
|- | |- | ||
| − | | 01 | + | | 01:36 |
| − | | | + | | Let us start to write a program. |
|- | |- | ||
| − | | 01 | + | | 01:39 |
| − | | | + | | Type double slash '''“//”''' space |
|- | |- | ||
| − | | 01 | + | | 01:42 |
| − | | | + | |'''“My first C program”.''' |
|- | |- | ||
| − | | 01 | + | |01:48 |
| − | | | + | | Here, double slash is used to comment the line. |
|- | |- | ||
| − | |01 | + | | 01:52 |
| − | | | + | |Comments are used to understand the flow of program. |
|- | |- | ||
| − | | 01 | + | | 01:56 |
| − | | | + | |It is useful for documentation. |
|- | |- | ||
| − | | 01 | + | | 01:58 |
| − | | | + | |It gives us information about the program. |
|- | |- | ||
| − | | 01 | + | | 02:01 |
| − | | | + | |The double slash is called as single line comment. |
|- | |- | ||
| − | | 02 | + | | 02:07 |
| − | | | + | | Now press '''Enter'''. |
|- | |- | ||
| − | | 02 | + | |02:09 |
| − | | | + | |Type (hash) '''“#include”''' space opening bracket , closing bracket. |
|- | |- | ||
| − | |02 | + | | 02:17 |
| − | | | + | | It is always a good practice to complete the brackets first, and then start writing inside it. |
|- | |- | ||
| − | | 02 | + | | 02:24 |
| − | | | + | | Now Inside the bracket, type'''“stdio”''' “(dot).” “'''h” '''. |
|- | |- | ||
| − | | 02 | + | | 02:30 |
| − | | | + | | '''stdio.h''' is a '''header file'''. |
|- | |- | ||
| − | | 02 | + | | 02:33 |
| − | | | + | |A '''program''' must contain this header file when it uses standard '''input/output functions'''. |
|- | |- | ||
| − | | 02 | + | | 02:41 |
| − | | | + | |Now press Enter. |
|- | |- | ||
| − | | 02 | + | | 02:43 |
| − | | | + | | type '''“int” '''space''' “main” '''opening bracket, closing bracket. |
| − | + | ||
| − | + | ||
|- | |- | ||
| − | | 02 | + | | 02:50 |
| − | | | | + | | | '''main''' is a special '''function'''. |
| + | |- | ||
| + | | 02:52 | ||
| + | |It denotes that the execution of the program begins from this line. | ||
|- | |- | ||
| − | | 02 | + | | 02:58 |
| − | | | + | |The opening bracket and closing bracket is called as parenthesis. |
| − | + | ||
|- | |- | ||
| − | | | + | | 03:04 |
| − | | | + | | Parenthesis followed by '''main''' is to tell the user that '''main''' is a '''function'''. |
|- | |- | ||
| − | | 03 | + | | 03:11 |
| − | | ''' | + | | Here the '''int''' '''main function''' takes no '''arguments'''. |
|- | |- | ||
| − | | 03 | + | | 03:15 |
| − | | | + | |It returns a value of type '''integer'''. |
|- | |- | ||
| − | | 03 | + | | 03:18 |
| − | | | + | | We will learn about '''data types''' in another tutorial. |
|- | |- | ||
| − | | 03 | + | | 03:23 |
| − | | ''' | + | | Now Let us switch to the slides to know more about '''main''' function. Let us go to the next slide. |
|- | |- | ||
| − | | 03 | + | | 03:29 |
| − | | | + | | Every '''program''' should have one main() function. |
|- | |- | ||
| − | | 03 | + | | 03:33 |
| − | | | + | |There should NOT be more than one main function. |
|- | |- | ||
| − | | 03 | + | | 03:36 |
| − | | | + | |Otherwise the compiler cannot locate the beginning of the program. |
|- | |- | ||
| − | | 03 | + | | 03:41 |
| − | | | + | |The empty pair of parentheses indicates that main has no '''arguments'''. |
|- | |- | ||
| − | | 03 | + | | 03:46 |
| − | | | + | |The concept of arguments will be discussed in detail in the upcoming tutorials. |
|- | |- | ||
| − | | 03 | + | | 03:52 |
| − | | | + | | Now let us come back to our program. |
|- | |- | ||
| − | | 03 | + | | 03:55 |
| − | | | + | | Press '''Enter.''' |
|- | |- | ||
| − | | 03 | + | | 03:58 |
| − | | | + | | Type opening curly bracket '''“{”'''. |
|- | |- | ||
| − | | 04 | + | | 04:00 |
| − | | | + | |The opening curly bracket marks the beginning of the '''function''' '''main'''. |
|- | |- | ||
| − | | 04 | + | | 04:04 |
| − | | | + | |Then Type closing curly bracket '''“}”'''. |
|- | |- | ||
| − | | 04 | + | | 04:08 |
| − | | | + | |The closing curly bracket indicates the end of the '''function''' '''main'''. |
|- | |- | ||
| − | | 04 | + | | 04:13 |
| − | | | + | | Now Inside the bracket press '''Enter''' twice, |
|- | |- | ||
| − | | 04 | + | | 04:16 |
| − | | | + | |move the cursor one line up. |
|- | |- | ||
| − | | 04 | + | | 04:20 |
| − | | | + | | Indentation makes the code easier to read. |
|- | |- | ||
| − | | 04 | + | | 04:23 |
| − | | | + | |It also helps to locate errors faster. |
|- | |- | ||
| − | | 04 | + | | 04:25 |
| − | | | + | |So let us give three space here |
|- | |- | ||
| − | | 04 | + | | 04:29 |
| − | | | + | | And Type''' “printf” ''' opening bracket closing bracket '''“()” '''. |
|- | |- | ||
| − | | 04 | + | | 04:34 |
| − | |'''printf''' | + | |'''printf '''is a standard C function to print the output on the terminal. |
|- | |- | ||
| − | | 04 | + | | 04:39 |
| − | | | + | | Here, inside the brackets, within the double quotes. |
|- | |- | ||
| − | | 04 | + | | 04:43 |
| − | |printf | + | |Anything within the double quotes, in the printf statement, will be printed on the terminal. |
|- | |- | ||
| − | | 04 | + | | 04:50 |
| − | | | + | |Type'''“Talk To a Teacher '''backslash '''n”'''. |
|- | |- | ||
| − | | | + | | 04:59 |
| − | | | + | |Backslash n '''“\n” '''signifies newline. |
|- | |- | ||
| − | | 05 | + | | 05:03 |
| − | | | + | |As a result, after execution of the '''printf '''function, the cursor moves to the new line. |
|- | |- | ||
| − | | 05 | + | | 05:10 |
| − | | | + | | Every '''C''' statement must end with a '''semicolon “;”'''. |
|- | |- | ||
| − | | 05 | + | | 05:15 |
| − | | | + | |Hence, type it at the end of this line. |
|- | |- | ||
| − | | 05 | + | | 05:19 |
| − | | | + | |'''Semicolon''' acts as a statement terminator. |
|- | |- | ||
| − | |05 | + | |05:24 |
| − | | | + | |Now press '''Enter''' give three space here. |
|- | |- | ||
| − | |05 | + | |05:27 |
| − | | | + | | And type '''“return”''' space''' “0”''' and a '''semicolon'''. |
|- | |- | ||
| − | | 05 | + | | 05:34 |
| − | | | + | | This statement returns the integer zero. |
|- | |- | ||
| − | | 05 | + | | 05:38 |
| − | | | + | |An integer has to be returned for this function because the function type is '''int'''. |
|- | |- | ||
| − | | 05 | + | | 05:45 |
| − | |The '''return''' statement marks the end of executable statements | + | |The '''return''' statement marks the end of executable statements. |
|- | |- | ||
| − | | 05 | + | | 05:51 |
|We will learn more about the returned values in another tutorial. | |We will learn more about the returned values in another tutorial. | ||
|- | |- | ||
| − | | 05 | + | | 05:55 |
| − | | Now click on"'''Save'''" button to save the file | + | | Now click on"'''Save'''" button to save the file. |
|- | |- | ||
| − | | 06 | + | | 06:00 |
| − | |It is a good habit to save files frequently | + | |It is a good habit to save files frequently. |
|- | |- | ||
| − | | 06 | + | | 06:03 |
| − | |This will protect you from sudden power failures | + | |This will protect you from sudden power failures. |
|- | |- | ||
| − | | 06 | + | | 06:05 |
|It will also be useful in case the applications were to crash. | |It will also be useful in case the applications were to crash. | ||
|- | |- | ||
| − | | 06 | + | | 06:10 |
| − | | Let us now compile the program come back to a terminal. | + | | Let us now compile the program, come back to a terminal. |
|- | |- | ||
| − | | 06 | + | | 06:15 |
| − | |Type '''“gcc”''' space '''“talk.c”''' space hyphen “-'''o”''' space '''“myoutput”''' | + | |Type '''“gcc”''' space '''“talk.c”''' space hyphen “-'''o”''' space '''“myoutput”''', |
|- | |- | ||
| − | | 06 | + | | 06:24 |
| − | | '''gcc''' is the compiler | + | | '''gcc''' is the compiler, |
|- | |- | ||
| − | | 06 | + | | 06:27 |
|'''talk.c''' is our filename . | |'''talk.c''' is our filename . | ||
|- | |- | ||
| − | | 06 | + | | 06:30 |
| − | |'''-o''' '''myoutput''' says that the executable should go to the file '''myoutput''' | + | |'''-o''' '''myoutput''' says that the executable should go to the file '''myoutput'''. |
|- | |- | ||
| − | | 06 | + | | 06:37 |
| − | | Now Press''' Enter | + | | Now Press''' Enter'''. |
|- | |- | ||
| − | | 06 | + | | 06:39 |
| − | |We see that the program is compiled | + | |We see that the program is compiled. |
|- | |- | ||
| − | | 06 | + | | 06:42 |
| − | |By typing '''ls -lrt''', we can see that '''myoutput''' is the last file to be created | + | |By typing '''ls space (hypen) -lrt''', we can see that '''myoutput''' is the last file to be created. |
|- | |- | ||
| − | | 06 | + | | 06:54 |
| − | |To execute the program, type dot slash '''“./myoutput” ''' press '''Enter.''' | + | |To execute the program, type (dot slash)'''“./myoutput” ''', press '''Enter.''' |
|- | |- | ||
| − | |07 | + | |07:01 |
| Here the output is displayed as '''“Talk To a Teacher”.''' | | Here the output is displayed as '''“Talk To a Teacher”.''' | ||
|- | |- | ||
| − | | 07 | + | | 07:06 |
| − | | As I said before, return is the last statement to be executed | + | | As I said before, return is the last statement to be executed. |
|- | |- | ||
| − | | 07 | + | | 07:10 |
| − | |Thus after the return statement nothing will be executed. Let us try it out. | + | |Thus, after the return statement nothing will be executed. Let us try it out. |
|- | |- | ||
| − | |07 | + | |07:15 |
| come back to our program. | | come back to our program. | ||
|- | |- | ||
| − | | 07 | + | | 07:17 |
| − | | After the '''return''' statement, let us include one more printf statement | + | | After the '''return''' statement, let us include one more '''printf''' statement, |
|- | |- | ||
| − | | 07.35 | + | | 07:22 |
| + | | give space here, type printf opening bracket, closing bracket. | ||
| + | |||
| + | |- | ||
| + | | 07:27 | ||
| + | | Inside the bracket within the double quotes type Welcome backslash n , at the end type a semicolon. | ||
| + | |- | ||
| + | | 07:35 | ||
| Now click on save. | | Now click on save. | ||
|- | |- | ||
| − | | 07 | + | | 07:37 |
|Let us compile and execute come back to our terminal. | |Let us compile and execute come back to our terminal. | ||
|- | |- | ||
| − | |07 | + | |07:41 |
| you can recall the previously entered commands by using '''up arrow'''key. | | you can recall the previously entered commands by using '''up arrow'''key. | ||
|- | |- | ||
| − | | 07 | + | | 07:46 |
| − | |That is what I did now | + | |That is what I did now. |
|- | |- | ||
| − | | 07 | + | | 07:51 |
| − | |We see that the second | + | |We see that the second statement '''welcome''' is not executed. |
|- | |- | ||
| − | | 07 | + | | 07:58 |
| − | | Now come back to our program | + | | Now come back to our program. |
|- | |- | ||
| − | | 08 | + | | 08:00 |
| − | |Let us write the 'Welcome' statement above the return statement | + | |Let us write the 'Welcome' statement above the return statement. |
|- | |- | ||
| − | | 08 | + | | 08:06 |
| − | | Click on | + | | Click on ''' Save.''' |
|- | |- | ||
| − | | 08 | + | | 08:09 |
| − | |Let us compile and execute | + | |Let us compile and execute. |
|- | |- | ||
| − | | 08 | + | | 08:15 |
| − | |We see that the second '''printf''' statement ''welcome'' has also | + | |We see that the second '''printf''' statement ''welcome'' has also been executed. |
|- | |- | ||
| − | | 08 | + | | 08:23 |
| Now let us see the common errors which we can come across. Come back to our program. | | Now let us see the common errors which we can come across. Come back to our program. | ||
| − | |||
|- | |- | ||
| − | | 08 | + | | 08:29 |
| − | | Suppose here I will | + | | Suppose here I will miss the dot in '''“stdio.h”''', click on '''Save.''' |
| − | + | ||
|- | |- | ||
| − | | 08 | + | | 08:36 |
| Let us compile and execute . | | Let us compile and execute . | ||
|- | |- | ||
| − | | 08 | + | | 08:41 |
| − | |We see that | + | |We see that there is a fatal error at line no.2 in our '''talk.c''' file. |
|- | |- | ||
| − | | 08 | + | | 08:48 |
| − | | | + | |The compiler cannot find a '''header file''' with the name '''“stdioh”'''. Hence it is giving an error "no such file or directory". |
|- | |- | ||
| − | | 08 | + | | 08:59 |
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
|And the compilation is terminated. | |And the compilation is terminated. | ||
|- | |- | ||
| − | | 09 | + | | 09:03 |
| − | |Let us now fix the error come back to a | + | |Let us now fix the error come back to a program. Reinsert the dot '''“.”''', click on Save. |
| − | + | ||
|- | |- | ||
| − | | 09 | + | | 09:11 |
| − | | Let us compile and execute | + | | Let us compile and execute. Yes, it is working. |
|- | |- | ||
| − | | 09 | + | | 09:19 |
| − | | I will show you another common error | + | | I will show you another common error. |
|- | |- | ||
| − | |09 | + | |09:22 |
|Let us switch back to the program. | |Let us switch back to the program. | ||
| − | |||
|- | |- | ||
| − | | 09 | + | | 09:25 |
| − | | Now, suppose here | + | | Now, suppose here I will miss the '''semicolon''' at the end of the line. |
|- | |- | ||
| − | | 09 | + | | 09:31 |
| − | | Click on '''Save'''.Let us compile and execute | + | | Click on '''Save'''. Let us compile and execute. |
|- | |- | ||
| − | | 09 | + | | 09:41 |
| − | | We see that there is an error at line no.6 in our talk.c file. | + | | We see that there is an error at line no.6 in our talk.c file. that "expected ';' (semicolon) before 'printf'". |
|- | |- | ||
| − | | 09 | + | | 09:51 |
| − | |Come back to our program. | + | |Come back to our program. |
| + | |- | ||
| + | | 09:54 | ||
| + | |As I said before, semicolon acts as a statement terminator. | ||
|- | |- | ||
| − | | 09 | + | | 09:58 |
|So it will search for it at the end of the line.5 and at the beginning of the line.6. | |So it will search for it at the end of the line.5 and at the beginning of the line.6. | ||
|- | |- | ||
| − | | 10 | + | | 10:06 |
| − | | This is line 6 | + | | This is line 6. |
|- | |- | ||
| − | | 10 | + | | 10:09 |
| − | | This is the last place where you can put the '''semicolon''' | + | | This is the last place where you can put the '''semicolon'''. |
|- | |- | ||
| − | | 10 | + | | 10:12 |
| − | |Recall that the compiler also | + | |Recall that the compiler also gives the error message on line 6. |
|- | |- | ||
| − | | 10 | + | | 10:18 |
| Let us try what happens if we put the semicolon here. | | Let us try what happens if we put the semicolon here. | ||
|- | |- | ||
| − | | 10 | + | | 10:23 |
| Click on '''Save''' . | | Click on '''Save''' . | ||
|- | |- | ||
| − | | 10 | + | | 10:26 |
| − | |Let us | + | |Let us Compile and execute. |
|- | |- | ||
| − | | 10 | + | | 10:30 |
| − | | | + | |Yes, it is working. |
| − | + | ||
| − | + | ||
| + | |- | ||
| + | | 10:32 | ||
| + | |Now come back to our program. Let us type the ''semicolon'' here at the end of this line | ||
|- | |- | ||
| − | | 10 | + | | 10:40 |
| − | | | + | | as it is a conventional practice to type the ''semicolon'' at the end of the line. |
| + | |- | ||
| + | | 10:46 | ||
| + | | Now click on '''Save.''' | ||
|- | |- | ||
| − | | 10 | + | | 10:49 |
| − | | | + | | Let us Compile and execute. Yes it is working. |
| − | + | ||
|- | |- | ||
| − | | 10 | + | | 10:54 |
| − | | | + | |Now let us go back to our slides. |
|- | |- | ||
| − | |10 | + | |10:57 |
| As an Assignment | | As an Assignment | ||
|- | |- | ||
| − | | 10 | + | | 10:59 |
|Write a program to print "Welcome to the World of C" | |Write a program to print "Welcome to the World of C" | ||
|- | |- | ||
| − | | 11 | + | | 11:02 |
|See what happens if '''“\n”''' is not included in the '''printf''' statement. | |See what happens if '''“\n”''' is not included in the '''printf''' statement. | ||
|- | |- | ||
| − | | 11 | + | | 11:08 |
| − | | This brings us to the end of this tutorial | + | | This brings us to the end of this tutorial. |
|- | |- | ||
| − | | 11 | + | | 11:12 |
| − | | Watch the video available at the link shown | + | | Watch the video available at the link shown below, |
|- | |- | ||
| − | | 11 | + | | 11:15 |
| − | |It summarises the Spoken Tutorial project | + | |It summarises the Spoken Tutorial project. |
|- | |- | ||
| − | | 11 | + | | 11:18 |
|If you do not have good bandwidth, you can download and watch it. | |If you do not have good bandwidth, you can download and watch it. | ||
|- | |- | ||
| − | | 11 | + | | 11:22 |
| The Spoken Tutorial Project Team | | The Spoken Tutorial Project Team | ||
|- | |- | ||
| − | | 11 | + | | 11:24 |
| − | |Conducts workshops using spoken tutorials | + | |Conducts workshops using spoken tutorials. |
|- | |- | ||
| − | | 11 | + | | 11:28 |
| − | |Gives certificates to those who pass an online test | + | |Gives certificates to those who pass an online test. |
|- | |- | ||
| − | | 11 | + | | 11:31 |
|For more details, please write to contact [at] spoken hyphen tutorial dot org | |For more details, please write to contact [at] spoken hyphen tutorial dot org | ||
|- | |- | ||
| − | |11 | + | |11:38 |
| − | | Spoken Tutorial Project is a part of the Talk to a Teacher project | + | | Spoken Tutorial Project is a part of the Talk to a Teacher project. |
|- | |- | ||
| − | | 11 | + | | 11:42 |
| − | |It is supported by the National Mission on Education through ICT, MHRD, Government of India | + | |It is supported by the National Mission on Education through ICT, MHRD, Government of India. |
|- | |- | ||
| − | | 11 | + | | 11:47 |
| − | |More information on this Mission is available at: | + | |More information on this Mission is available at the link shown below: |
|- | |- | ||
| − | | 11 | + | | 11:51 |
| − | | This is Ashwini Patil from IIT Bombay. Thank you for | + | | This is Ashwini Patil from IIT Bombay signing off. Thank you for watching. |
|} | |} | ||
Latest revision as of 16:32, 7 March 2017
| Time | Narration |
| 00:01 | Welcome to the spoken tutorial on First C program. |
| 00:05 | In this tutorial, we will learn |
| 00:08 | How to write a simple C program |
| 00:11 | How to compile it |
| 00:13 | How to execute it We will also explain some common errors and their solutions. |
| 00:18 | To record this tutorial, I am using |
| 00:21 | Ubuntu operating system version 11.10 and gcc Compiler version 4.6.1 on Ubuntu. |
| 00:31 | To practice this tutorial, |
| 00:33 | You should be familiar with Ubuntu Operating System and an Editor. |
| 00:38 | Some editors are vim and gedit. |
| 00:42 | I will use 'gedit' in this tutorial. |
| 00:45 | For relevant tutorials please visit our website which is as shown. http://spoken-tutorial.org |
| 00:51 | Let me tell you how to write a C program through an example. |
| 00:55 | Open the terminal window by pressing Ctrl, Alt and T keys simultaneously on your keyboard. |
| 01:07 | Now let's open the text editor. So, at the prompt, type |
| 01:12 | “gedit” space “talk” dot “c” space “&” sign. |
| 01:20 | We use ampersand (&) to free up the prompt. |
| 01:24 | Please note that all the C files will have extension “.c”(dot C). |
| 01:30 | Now Press Enter, |
| 01:32 | the text editor has opened. |
| 01:36 | Let us start to write a program. |
| 01:39 | Type double slash “//” space |
| 01:42 | “My first C program”. |
| 01:48 | Here, double slash is used to comment the line. |
| 01:52 | Comments are used to understand the flow of program. |
| 01:56 | It is useful for documentation. |
| 01:58 | It gives us information about the program. |
| 02:01 | The double slash is called as single line comment. |
| 02:07 | Now press Enter. |
| 02:09 | Type (hash) “#include” space opening bracket , closing bracket. |
| 02:17 | It is always a good practice to complete the brackets first, and then start writing inside it. |
| 02:24 | Now Inside the bracket, type“stdio” “(dot).” “h” . |
| 02:30 | stdio.h is a header file. |
| 02:33 | A program must contain this header file when it uses standard input/output functions. |
| 02:41 | Now press Enter. |
| 02:43 | type “int” space “main” opening bracket, closing bracket. |
| 02:50 | main is a special function. |
| 02:52 | It denotes that the execution of the program begins from this line. |
| 02:58 | The opening bracket and closing bracket is called as parenthesis. |
| 03:04 | Parenthesis followed by main is to tell the user that main is a function. |
| 03:11 | Here the int main function takes no arguments. |
| 03:15 | It returns a value of type integer. |
| 03:18 | We will learn about data types in another tutorial. |
| 03:23 | Now Let us switch to the slides to know more about main function. Let us go to the next slide. |
| 03:29 | Every program should have one main() function. |
| 03:33 | There should NOT be more than one main function. |
| 03:36 | Otherwise the compiler cannot locate the beginning of the program. |
| 03:41 | The empty pair of parentheses indicates that main has no arguments. |
| 03:46 | The concept of arguments will be discussed in detail in the upcoming tutorials. |
| 03:52 | Now let us come back to our program. |
| 03:55 | Press Enter. |
| 03:58 | Type opening curly bracket “{”. |
| 04:00 | The opening curly bracket marks the beginning of the function main. |
| 04:04 | Then Type closing curly bracket “}”. |
| 04:08 | The closing curly bracket indicates the end of the function main. |
| 04:13 | Now Inside the bracket press Enter twice, |
| 04:16 | move the cursor one line up. |
| 04:20 | Indentation makes the code easier to read. |
| 04:23 | It also helps to locate errors faster. |
| 04:25 | So let us give three space here |
| 04:29 | And Type “printf” opening bracket closing bracket “()” . |
| 04:34 | printf is a standard C function to print the output on the terminal. |
| 04:39 | Here, inside the brackets, within the double quotes. |
| 04:43 | Anything within the double quotes, in the printf statement, will be printed on the terminal. |
| 04:50 | Type“Talk To a Teacher backslash n”. |
| 04:59 | Backslash n “\n” signifies newline. |
| 05:03 | As a result, after execution of the printf function, the cursor moves to the new line. |
| 05:10 | Every C statement must end with a semicolon “;”. |
| 05:15 | Hence, type it at the end of this line. |
| 05:19 | Semicolon acts as a statement terminator. |
| 05:24 | Now press Enter give three space here. |
| 05:27 | And type “return” space “0” and a semicolon. |
| 05:34 | This statement returns the integer zero. |
| 05:38 | An integer has to be returned for this function because the function type is int. |
| 05:45 | The return statement marks the end of executable statements. |
| 05:51 | We will learn more about the returned values in another tutorial. |
| 05:55 | Now click on"Save" button to save the file. |
| 06:00 | It is a good habit to save files frequently. |
| 06:03 | This will protect you from sudden power failures. |
| 06:05 | It will also be useful in case the applications were to crash. |
| 06:10 | Let us now compile the program, come back to a terminal. |
| 06:15 | Type “gcc” space “talk.c” space hyphen “-o” space “myoutput”, |
| 06:24 | gcc is the compiler, |
| 06:27 | talk.c is our filename . |
| 06:30 | -o myoutput says that the executable should go to the file myoutput. |
| 06:37 | Now Press Enter. |
| 06:39 | We see that the program is compiled. |
| 06:42 | By typing ls space (hypen) -lrt, we can see that myoutput is the last file to be created. |
| 06:54 | To execute the program, type (dot slash)“./myoutput” , press Enter. |
| 07:01 | Here the output is displayed as “Talk To a Teacher”. |
| 07:06 | As I said before, return is the last statement to be executed. |
| 07:10 | Thus, after the return statement nothing will be executed. Let us try it out. |
| 07:15 | come back to our program. |
| 07:17 | After the return statement, let us include one more printf statement, |
| 07:22 | give space here, type printf opening bracket, closing bracket. |
| 07:27 | Inside the bracket within the double quotes type Welcome backslash n , at the end type a semicolon. |
| 07:35 | Now click on save. |
| 07:37 | Let us compile and execute come back to our terminal. |
| 07:41 | you can recall the previously entered commands by using up arrowkey. |
| 07:46 | That is what I did now. |
| 07:51 | We see that the second statement welcome is not executed. |
| 07:58 | Now come back to our program. |
| 08:00 | Let us write the 'Welcome' statement above the return statement. |
| 08:06 | Click on Save. |
| 08:09 | Let us compile and execute. |
| 08:15 | We see that the second printf statement welcome has also been executed. |
| 08:23 | Now let us see the common errors which we can come across. Come back to our program. |
| 08:29 | Suppose here I will miss the dot in “stdio.h”, click on Save. |
| 08:36 | Let us compile and execute . |
| 08:41 | We see that there is a fatal error at line no.2 in our talk.c file. |
| 08:48 | The compiler cannot find a header file with the name “stdioh”. Hence it is giving an error "no such file or directory". |
| 08:59 | And the compilation is terminated. |
| 09:03 | Let us now fix the error come back to a program. Reinsert the dot “.”, click on Save. |
| 09:11 | Let us compile and execute. Yes, it is working. |
| 09:19 | I will show you another common error. |
| 09:22 | Let us switch back to the program. |
| 09:25 | Now, suppose here I will miss the semicolon at the end of the line. |
| 09:31 | Click on Save. Let us compile and execute. |
| 09:41 | We see that there is an error at line no.6 in our talk.c file. that "expected ';' (semicolon) before 'printf'". |
| 09:51 | Come back to our program. |
| 09:54 | As I said before, semicolon acts as a statement terminator. |
| 09:58 | So it will search for it at the end of the line.5 and at the beginning of the line.6. |
| 10:06 | This is line 6. |
| 10:09 | This is the last place where you can put the semicolon. |
| 10:12 | Recall that the compiler also gives the error message on line 6. |
| 10:18 | Let us try what happens if we put the semicolon here. |
| 10:23 | Click on Save . |
| 10:26 | Let us Compile and execute. |
| 10:30 | Yes, it is working. |
| 10:32 | Now come back to our program. Let us type the semicolon here at the end of this line |
| 10:40 | as it is a conventional practice to type the semicolon at the end of the line. |
| 10:46 | Now click on Save. |
| 10:49 | Let us Compile and execute. Yes it is working. |
| 10:54 | Now let us go back to our slides. |
| 10:57 | As an Assignment |
| 10:59 | Write a program to print "Welcome to the World of C" |
| 11:02 | See what happens if “\n” is not included in the printf statement. |
| 11:08 | This brings us to the end of this tutorial. |
| 11:12 | Watch the video available at the link shown below, |
| 11:15 | It summarises the Spoken Tutorial project. |
| 11:18 | If you do not have good bandwidth, you can download and watch it. |
| 11:22 | The Spoken Tutorial Project Team |
| 11:24 | Conducts workshops using spoken tutorials. |
| 11:28 | Gives certificates to those who pass an online test. |
| 11:31 | For more details, please write to contact [at] spoken hyphen tutorial dot org |
| 11:38 | Spoken Tutorial Project is a part of the Talk to a Teacher project. |
| 11:42 | It is supported by the National Mission on Education through ICT, MHRD, Government of India. |
| 11:47 | More information on this Mission is available at the link shown below: |
| 11:51 | This is Ashwini Patil from IIT Bombay signing off. Thank you for watching. |
Contributors and Content Editors
Ashwini, Devraj, Krupali, PoojaMoolya, Pratik kamble, Sakinashaikh, Sandhya.np14, Sanmugam, Sneha