C Tutorial






1.Language
1.1.First Program( 1 ) 1.11.static Variables( 2 ) 
1.2.C Language Keywords( 1 ) 1.12.Variable Address( 2 ) 
1.3.main function( 1 ) 1.13.Variable Pointer( 2 ) 
1.4.Command Line Arguments( 1 ) 1.14.Variable argument lists( 1 ) 
1.5.Variable Declaration( 7 ) 1.15.Comments( 5 ) 
1.6.Variable Output( 1 ) 1.16.Convention( 2 ) 
1.7.Variable Size and Limitation( 2 ) 1.17.Header Files( 6 ) 
1.8.Variable Scope( 2 ) 1.18.External references( 1 ) 
1.9.Global variables( 2 ) 1.19.gcc( 1 ) 
1.10.Local variable( 1 ) 
2.Data Type
2.1.Data Type( 7 ) 2.17.float number( 4 ) 
2.2.int Declaration( 1 ) 2.18.float Declaration( 6 ) 
2.3.int Read( 1 ) 2.19.float read( 1 ) 
2.4.int Display( 2 ) 2.20.float Display( 7 ) 
2.5.int Calculation( 4 ) 2.21.float Calculation( 3 ) 
2.6.int Conversion( 1 ) 2.22.Double( 2 ) 
2.7.Integer Family( 5 ) 2.23.Bit( 1 ) 
2.8.Hexadecimal numbers( 1 ) 2.24.Bit Shift( 1 ) 
2.9.Octal numbers( 1 ) 2.25.enum( 1 ) 
2.10.Long( 1 ) 2.26.Union( 2 ) 
2.11.char( 6 ) 2.27.const( 3 ) 
2.12.char read( 4 ) 2.28.True False( 1 ) 
2.13.char Display( 4 ) 2.29.Equality( 2 ) 
2.14.char Calculation( 5 ) 2.30.Register variable( 1 ) 
2.15.char function( 3 ) 2.31.Data Type Cast( 4 ) 
2.16.ASCII Table( 1 ) 2.32.Complex( 1 ) 
3.String
3.1.String Introduction( 6 ) 3.7.String Length( 1 ) 
3.2.String Terminator( 3 ) 3.8.String Copy( 2 ) 
3.3.String Read( 3 ) 3.9.String Parameter( 1 ) 
3.4.String Display( 2 ) 3.10.String Array( 1 ) 
3.5.String Escape( 4 ) 3.11.String Search( 1 ) 
3.6.String Join( 1 ) 3.12.String Sort( 2 ) 
4.printf scanf
4.1.printf Basics( 9 ) 4.17.printf star( 1 ) 
4.2.printf char( 1 ) 4.18.printf Type prefixes( 3 ) 
4.3.printf sign character( 4 ) 4.19.printf format( 2 ) 
4.4.printf int( 1 ) 4.20.scanf Basics( 7 ) 
4.5.printf hexadecimal( 2 ) 4.21.scanf char( 1 ) 
4.6.printf octal( 1 ) 4.22.scanf int( 1 ) 
4.7.printf float( 3 ) 4.23.scanf float( 3 ) 
4.8.printf exponential form( 2 ) 4.24.scanf hexadecimal( 1 ) 
4.9.printf Precision( 3 ) 4.25.scanf octal( 1 ) 
4.10.printf string( 1 ) 4.26.scanf String Read( 1 ) 
4.11.printf Escape Sequence( 11 ) 4.27.scanf field width( 1 ) 
4.12.printf unsigned( 1 ) 4.28.scanf unsigned( 3 ) 
4.13.printf 0s( 2 ) 4.29.scanf length( 1 ) 
4.14.printf conversion( 1 ) 4.30.scanf scan set( 1 ) 
4.15.printf Field width( 1 ) 4.31.scanf star( 2 ) 
4.16.printf Justify( 2 ) 4.32.scanf format( 2 ) 
5.Operator
5.1.Assignment Operator( 2 ) 5.7.Bitwise Operator( 9 ) 
5.2.Arithmetic Operators( 3 ) 5.8.Shift operator( 1 ) 
5.3.Increment decrement Operator( 2 ) 5.9.Comma Operator( 2 ) 
5.4.Relational Operators( 1 ) 5.10.sizeof operator( 1 ) 
5.5.Logic Operators( 7 ) 5.11.Ternary operator( 1 ) 
5.6.Short Calculation( 1 ) 
6.Statement
6.1.Control Structures( 2 ) 6.6.For statement( 12 ) 
6.2.Statement( 2 ) 6.7.While Loop( 5 ) 
6.3.If statement( 13 ) 6.8.Do While( 4 ) 
6.4.Switch statement( 9 ) 6.9.Break( 2 ) 
6.5.Loop statement( 1 ) 6.10.Continue( 1 ) 
7.Array
7.1.Array Introduction( 3 ) 7.7.Array Parameter( 2 ) 
7.2.Array Initializing( 3 ) 7.8.Array Pointer( 7 ) 
7.3.Array scanf( 1 ) 7.9.Two dimensional array( 2 ) 
7.4.Array Merge( 1 ) 7.10.Multi Dimensional Array Initializing( 1 ) 
7.5.Array Reverse( 2 ) 7.11.Multi Dimensional Array Pointer( 5 ) 
7.6.Array Search( 2 ) 
8.Function
8.1.Function Introduction( 1 ) 8.6.Function Pointer( 4 ) 
8.2.Function Definition( 1 ) 8.7.Function Return( 3 ) 
8.3.Function Prototype( 3 ) 8.8.Recursive Function( 3 ) 
8.4.Function Call( 1 ) 8.9.Variable Number of Arguments( 1 ) 
8.5.Function Parameter( 6 ) 
9.Structure
9.1.Structure( 2 ) 9.3.structure sort( 1 ) 
9.2.structure pointer( 1 ) 
10.Pointer
10.1.Pointer Introduction( 1 ) 10.6.Pointer offset( 1 ) 
10.2.Address and Pointers( 3 ) 10.7.Pointer Size( 1 ) 
10.3.Address Operator( 1 ) 10.8.Pointer subscript( 1 ) 
10.4.NULL Pointer( 1 ) 10.9.const pointer( 4 ) 
10.5.Pointer Calculation( 4 ) 
11.Memory
11.1.Memory Allocation( 1 ) 11.2.Deallocate Memory( 1 ) 
12.Preprocessor
12.1.Preprocessor( 1 ) 12.7.ifelse( 1 ) 
12.2.define( 2 ) 12.8.ifndef( 1 ) 
12.3.undef( 1 ) 12.9.line( 1 ) 
12.4.if( 1 ) 12.10.error( 1 ) 
12.5.ifdef( 1 ) 12.11.MACRO( 2 ) 
12.6.ifelif( 1 ) 12.12.FILE LINE( 2 ) 
13.File
13.1.File Open( 1 ) 13.2.File Read( 1 ) 
14.Data Structure
14.1.Linked list( 2 ) 14.3.Queue( 3 ) 
14.2.Stack( 2 ) 14.4.Circular Queue( 1 ) 
15.Search Sort
15.1.Bubble Sort( 1 ) 15.5.Insertion Sort( 1 ) 
15.2.Shaker Sort( 1 ) 15.6.Quicksort( 1 ) 
15.3.Selection Sort( 1 ) 15.7.Sequential Search( 1 ) 
15.4.Shell Sort( 1 ) 15.8.Binary Search( 1 ) 
16.Wide Character String
16.1.Wide Character Functions( 7 ) 16.6.Wide Character String Length( 1 ) 
16.2.Wide Character String Terminator( 1 ) 16.7.Wide Character String Search( 1 ) 
16.3.Wide Character String Output( 1 ) 16.8.Change Case( 2 ) 
16.4.fgetws Wide String Read( 1 ) 16.9.Wide Char Calculation( 1 ) 
16.5.Read Wide Character String( 1 ) 
17.assert.h
17.1.assert( 1 ) 
18.ctype.h
18.1.isalnum( 1 ) 18.8.isprint( 1 ) 
18.2.isalpha( 1 ) 18.9.ispunct( 1 ) 
18.3.isblank( 1 ) 18.10.isspace( 1 ) 
18.4.iscntrl( 1 ) 18.11.isupper( 1 ) 
18.5.isdigit( 1 ) 18.12.isxdigit( 1 ) 
18.6.isgraph( 1 ) 18.13.tolower( 1 ) 
18.7.islower( 1 ) 18.14.toupper( 1 ) 
19.math.h
19.1.const( 1 ) 19.36.islessgreater( 1 ) 
19.2.acos( 1 ) 19.37.isnan( 1 ) 
19.3.acosh( 1 ) 19.38.isnormal( 1 ) 
19.4.asin( 1 ) 19.39.isunordered( 1 ) 
19.5.asinh( 1 ) 19.40.ldexp( 1 ) 
19.6.atan2( 1 ) 19.41.lgamma( 1 ) 
19.7.atan( 1 ) 19.42.llrint( 1 ) 
19.8.atanh( 1 ) 19.43.llround( 1 ) 
19.9.cbrt( 1 ) 19.44.log1p( 1 ) 
19.10.ceil( 1 ) 19.45.log2( 1 ) 
19.11.copysign( 1 ) 19.46.log10( 1 ) 
19.12.cos( 1 ) 19.47.log( 1 ) 
19.13.cosh( 1 ) 19.48.logb( 1 ) 
19.14.erf( 1 ) 19.49.lrint( 1 ) 
19.15.erfc( 1 ) 19.50.lround( 1 ) 
19.16.exp2( 1 ) 19.51.modf( 1 ) 
19.17.exp( 1 ) 19.52.nan( 1 ) 
19.18.expm1( 1 ) 19.53.nearbyint( 1 ) 
19.19.fabs( 1 ) 19.54.nextafter( 1 ) 
19.20.fdim( 1 ) 19.55.nexttoward( 1 ) 
19.21.floor( 1 ) 19.56.pow( 1 ) 
19.22.fma( 1 ) 19.57.remainder( 1 ) 
19.23.fmax( 1 ) 19.58.remquo( 1 ) 
19.24.fmin( 1 ) 19.59.rint( 1 ) 
19.25.fmod( 1 ) 19.60.round( 1 ) 
19.26.fpclassify( 1 ) 19.61.scalbln( 1 ) 
19.27.frexp( 1 ) 19.62.scalbn( 1 ) 
19.28.hypot( 1 ) 19.63.signbit( 1 ) 
19.29.ilogb( 1 ) 19.64.sin( 1 ) 
19.30.isfinite( 1 ) 19.65.sinh( 1 ) 
19.31.isgreater( 1 ) 19.66.sqrt( 1 ) 
19.32.isgreaterequal( 1 ) 19.67.tan( 1 ) 
19.33.isinf( 1 ) 19.68.tanh( 1 ) 
19.34.isless( 1 ) 19.69.tgamma( 1 ) 
19.35.islessequal( 1 ) 19.70.trunc( 1 ) 
20.setjmp.h
20.1.longjmp( 1 ) 20.2.setjmp( 1 ) 
21.signal.h
21.1.raise( 1 ) 
22.stdio.h
22.1.clearerr( 1 ) 22.22.gets( 3 ) 
22.2.fclose( 1 ) 22.23.perror( 1 ) 
22.3.feof( 1 ) 22.24.printf( 1 ) 
22.4.ferror( 1 ) 22.25.putc( 1 ) 
22.5.fflush( 2 ) 22.26.putchar( 1 ) 
22.6.fgetc( 1 ) 22.27.puts( 3 ) 
22.7.fgetpos( 1 ) 22.28.remove( 1 ) 
22.8.fgets( 1 ) 22.29.rename( 1 ) 
22.9.fopen( 1 ) 22.30.rewind( 1 ) 
22.10.fprintf( 1 ) 22.31.scanf( 1 ) 
22.11.fputc( 1 ) 22.32.setbuf( 1 ) 
22.12.fputs( 1 ) 22.33.setvbuf( 1 ) 
22.13.fread( 1 ) 22.34.snprintf( 1 ) 
22.14.freopen( 1 ) 22.35.sprintf( 1 ) 
22.15.fscanf( 1 ) 22.36.sscanf( 1 ) 
22.16.fseek( 1 ) 22.37.tmpfile( 1 ) 
22.17.fsetpos( 1 ) 22.38.tmpnam( 1 ) 
22.18.ftell( 1 ) 22.39.ungetc( 1 ) 
22.19.fwrite( 1 ) 22.40.vprintf vfprintf vsprintf vsnprintf( 1 ) 
22.20.getc( 1 ) 22.41.vscanf vfscanf vsscanf( 1 ) 
22.21.getchar( 1 ) 
23.stdlib.h
23.1.abort( 1 ) 23.18.lldiv( 1 ) 
23.2.abs( 1 ) 23.19.malloc( 1 ) 
23.3.atexit( 1 ) 23.20.mblen( 1 ) 
23.4.atof( 1 ) 23.21.mbstowcs( 1 ) 
23.5.atoi( 1 ) 23.22.mbtowc( 1 ) 
23.6.atol( 1 ) 23.23.qsort( 1 ) 
23.7.atoll( 1 ) 23.24.rand( 2 ) 
23.8.bsearch( 1 ) 23.25.realloc( 1 ) 
23.9.calloc( 1 ) 23.26.srand( 1 ) 
23.10.div( 1 ) 23.27.strtod( 1 ) 
23.11.Exit 2( 1 ) 23.28.strtof( 1 ) 
23.12.exit( 1 ) 23.29.strtol( 1 ) 
23.13.free( 1 ) 23.30.strtold( 1 ) 
23.14.getenv( 1 ) 23.31.strtoll( 1 ) 
23.15.labs( 1 ) 23.32.strtoul( 1 ) 
23.16.ldiv( 1 ) 23.33.strtoull( 1 ) 
23.17.llabs( 1 ) 23.34.system( 1 ) 
24.string.h
24.1.memchr( 1 ) 24.12.strerror( 1 ) 
24.2.memcmp( 1 ) 24.13.strlen( 1 ) 
24.3.memcpy( 1 ) 24.14.strncat( 2 ) 
24.4.memmove( 1 ) 24.15.strncmp( 2 ) 
24.5.memset( 1 ) 24.16.strncpy( 1 ) 
24.6.strcat( 1 ) 24.17.strpbrk( 1 ) 
24.7.strchr( 1 ) 24.18.strrchr( 2 ) 
24.8.strcmp( 1 ) 24.19.strspn( 1 ) 
24.9.strcoll( 1 ) 24.20.strstr( 1 ) 
24.10.strcpy( 1 ) 24.21.strtok( 1 ) 
24.11.strcspn( 1 ) 24.22.strxfrm( 1 ) 
25.time.h
25.1.Introduction( 1 ) 25.7.localeconv( 1 ) 
25.2.asctime( 1 ) 25.8.localtime( 1 ) 
25.3.clock( 1 ) 25.9.mktime( 1 ) 
25.4.ctime( 1 ) 25.10.setlocale( 1 ) 
25.5.difftime( 1 ) 25.11.strftime( 1 ) 
25.6.gmtime( 1 ) 25.12.time( 1 ) 
26.wctype.h
26.1.iswalnum( 1 ) 26.8.iswprint( 1 ) 
26.2.iswalpha( 1 ) 26.9.iswpunct( 1 ) 
26.3.iswblank( 1 ) 26.10.iswspace( 1 ) 
26.4.iswcntrl( 1 ) 26.11.iswupper( 1 ) 
26.5.iswdigit( 1 ) 26.12.iswxdigit( 1 ) 
26.6.iswgraph( 1 ) 26.13.towlower( 1 ) 
26.7.iswlower( 1 )