We're going to discuss the fundamental type char. Char is going to let us do a lot of texts processing, and char is a constituent in a string. Later, we're going to understand how strings are just series of char actually that when we learn more about that, we'll see that a string is basically an array of char with a sentinel character at the end that should basically as zero. S Char is a fundamental datatype, and a literal or constant char includes things like the lowercase letters. That is, they're represented in your code as single quote x single quote. But also, you could have a digit like seven and it would be represented again unlike it wouldn't be seven because if seven was without the quotes, then it would be the literal or constant int. Then for example there are also, and we've already used them, non-printing characters. Characters that don't show up directly on the screen but do something. The most common one is backslash n, which tells you to advance to a new line. Now you don't have to memorize this. But in most texts or online, you can find the values of the standard 0-127. So it's actually a table of 128 characters that can be printed or the non-printing characters that will do some action on your computer system. Among those characters are for example the uppercase and what's nice about the uppercase if you remember, capital A is an integer value 65, then they actually appear in the ASCII table adjacent to each other and capital B is 66 and capital C is 67 and so on until you reach capital Z which is 90. Similarly with the lowercase, though they are in a different place in the table, so a lowercase a is 97 and then its sequences all the way to lowercase c which is 122. This is a bit confusing. Digits, when you use them as char, have a value. So the digit zero as a character is actually integer value 48, and it is also a sequence from zero to nine. So you have all the decimal digits available for purposes of using them as char or internally in a string, and they range from the integer value 48 to 57. Then there are others, all the other characters you find on the keyboard. These are punctuation characters and operator characters and special characters like dollar sign. They are all available in the ASCII table and they all have a particular integer value, except unless you are a memorization freak, you're going to have to look them up. But of course, you can quote them and then they will indeed also have this internal integer value. One of the things about this is you can store these in a byte. So you can use eight bits and store the entire any of the ASCII values. Now, non-printing characters are very important as well because they promote actions on your computer system. Backslash n, you can't have n because that would be printed as n. But backslash n escapes it. So the idea is backslash n is a special non-printing character and indeed when you put it in a printf, integer value is 10. But what it does is advances to the next line on the screen. Backslash a is also a non-printing character. If its value is seven and if you were to use it inside a program, it would on your system ring a bell or make a sound. So that's the character set you can use. Now let's show a simple program for how that may be used. I wrote this program to show how it would be used in a very simple way, just show how the characters when printed as a percent c, see here, percent c is in that format string, that's going to print out as a character. Notice the character is declared, the variable c is a character variable, and we're going to assign it again, quote single-quote a single quote. Now we're going to print it in two different ways. The first way we'll print it as a percent d. So it should show up as an integer. The second print it should show up as a character. Then we're going to do the following to show you that, these values, the ABCs are going to be sequential. So we have three characters to print, and they're going to be c, c plus 1 and c plus 2. Those are integer expressions, but they are interpreted as a character. So in effect, the ASCII table gets used to show what gets printed. Here, if you run this on your local system, you should hear something. You should hear three distinct noises or bells and here you have this backslash a which I talked about as a non-printing character. Of course, there's a non-printing character here too, and that's in the string, and that's interpreted by printf. So printf knows how to interpret that. If I had put that over here, if I had made that a character to be printed using the percent c, then what I would see is nothing but an advance of the screen. Let's run this. I already compiled it and you see its output. The character c has an ASCII value 97. As I said in the beginning of the lecture, that's the character a. So when I print it as an integer, printed as 97. I print it as character, prints as an a. The three consecutive characters that got printed are a,b,c just as we expect. The three bell rings. Nothing got printed. But I heard them locally. I don't know if the microphone pick them up but there was bing, bing, bing. That weren't in fact the printing of those three of non-printing characters.