C Programming: Difference between revisions

From Chorke Wiki
Jump to navigation Jump to search
 
(10 intermediate revisions by the same user not shown)
Line 28: Line 28:
}
}
</syntaxhighlight>
</syntaxhighlight>
== C Tokens ==
C Supports Six Types of Tokens:
# [[C Programming#Identifiers |Identifiers ]]
# [[C Programming#Keywords|Keywords]]
# Constants
# Strings
# Operators
# Special Symbols
=== Identifiers ===
Identifiers are names for entities in a C program, such as variables, arrays, functions, structures, unions and labels. An identifier can be composed only of uppercase, lowercase letters, underscore and digits, but should start only with an alphabet or an underscore.
'''Rules for Naming Identifiers:'''
# An identifier can only have alphanumeric characters (a-z , A-Z , 0-9) (i.e. letters & digits) and underscore( _ ) symbol.
# Identifier names must be unique
# The first character must be an alphabet or underscore.
# Cannot be keyword as identifiers.
# Should not be of length more than 31 characters.
# Must not contain white spaces.
# Identifiers are case-sensitive.
'''Kinds of identifiers:'''
# Internal
# External
=== Keywords ===
{| class="wikitable"
|-
| auto || double || int || struct
|-
| break || else || long || switch
|-
| case || enum || register || typedef
|-
| char || extern || return || union
|-
| const || float || short || unsigned
|-
| continue || for || signed || void
|-
| default || goto || sizeof || volatile
|-
| do || if || static || while
|}
=== Keywords vs Identifiers ===
{| class="wikitable"
|-
! Keyword !!  Identifier
|-
| Predefined-word  || User-defined word
|-
| Must be written in lowercase only || Can written in lowercase and uppercase
|-
| Has fixed meaning || Must be meaningful in the program
|-
| Whose meaning has already been explained to the C compiler || Whose meaning not explained to the C compiler
|-
| Combination of alphabetic characters || Combination of alphanumeric characters
|-
| Used only for it intended purpose || Used for required purpose
|-
| Underscore character is not considered as a letter || Underscore character is considered as a letter
|}


== Concepts ==
== Concepts ==
* [[C Programming/C Tokens|C Tokens]]
* [[C Programming/Tokens|Tokens]]
* [[C Programming/Operators|Operators]]
* [[C Programming/Character set|Character set]]
* [[C Programming/Character set|Character set]]
* [[C Programming/Data Types|Data Types]]
* [[C Programming/Constants|Constants]]
* [[C Programming/Storage Class|Storage Class]]
* [[C Programming/Flow Control|Flow Control]]
* [[C Programming/Structure Datatype|Structure Datatype]]
* [[C Programming/Unions Datatype|Unions Datatype]]


== Exercise ==
== Exercise ==
Line 103: Line 45:
* Operator Precedence
* Operator Precedence
* [[C Programming/String Manipulation|String Manipulation]]
* [[C Programming/String Manipulation|String Manipulation]]
* [[C Programming/File Manipulation|File Manipulation]]


== References ==
== References ==
* [https://www.w3schools.in/c-program/ C Program by W3 Schools India]
* [https://w3schools.in/c-program/ C Program by W3 Schools India]
* [https://www.w3schools.in/c-tutorial C Tutorial by W3 Schools India]
* [https://w3schools.in/c-tutorial C Tutorial by W3 Schools India]
* [https://en.wikibooks.org/wiki/C_Programming C Programming by Wiki Book]
* [https://en.wikibooks.org/wiki/C_Programming C Programming by Wiki Book]
* www.tutorialspoint.com/ansi_c
* [http://en.cppreference.com/w/ C++ Reference]
* [http://en.cppreference.com/w/ C++ Reference]



Latest revision as of 06:23, 5 February 2018

Overview

C (/siː/, as in the letter c) is a general-purpose, imperative computer programming language, supporting structured programming, lexical variable scope and recursion, while a static type system prevents many unintended operations. By design, C provides constructs that map efficiently to typical machine instructions, and therefore it has found lasting use in applications that had formerly been coded in assembly language, including operating systems, as well as various application software for computers ranging from Supercomputers to Embedded Systems.

C was originally developed by Dennis Ritchie between 1969 and 1973 at Bell Labs, and used to re-implement the Unix Operating System. It has since become one of the most widely used programming languages of all time, with C compilers from various vendors available for the majority of existing computer architectures and operating systems. C has been standardized by the American National Standards Institute (ANSI) since 1989 and subsequently by the International Organization for Standardization (ISO).

C is an imperative procedural language. It was designed to be compiled using a relatively straightforward compiler, to provide low-level access to memory, to provide language constructs that map efficiently to machine instructions, and to require Minimal Run-Time Support. Despite its Low-Level Capabilities, the language was designed to encourage Cross-Platform Programming. A standards-compliant and portably written C program can be compiled for a very wide variety of computer platforms and operating systems with few changes to its source code. The language has become available on a very wide range of platforms, from Embedded Microcontrollers to Supercomputers.


Getting Start

Traditionally it was little bit difficult to programming with C/C++. Have to depends on Turbo C/C++ or Borland C/C++, very much annoying to install and configure them. Where CodeBlocks is blessing for us with 91.3 MB of installer with Zero Configuration needs, also support so many features using plugins. First I hear from one of my colleagues then from one of my tutor and fellows at TechshopBD. A C Program basically consists of the following:

  1. Preprocessor Commands
  2. Functions
  3. Variables
  4. Statements & Expressions
  5. Comments

Hello World

//main.c
#include <stdio.h>

int main()
{
    printf("Hello World!\n");
    return 0;
}

Concepts

Exercise

References

Beginning

Intermediate

Advanced

Miscellaneous