IISPL - Indian Institute Of Software Programming Language

IT Education & Training

The Architecture of the Java Virtual Machine - IISPL

Jul 072016

In the Java virtual machine specification, the behaviour of a virtual machine instance is described in terms of subsystems, memory areas, data types, and instructions. These components describe an abstract inner architecture for the abstract Java virtual machine. The purpose of these components is not so much to dictate an inner architecture for implementations. It is more to provide a way to strictly define the external behaviour of implementations. The specification defines the required behaviour of any Java virtual machine implementation in terms of these abstract components and their interactions.

Below Figure shows a block diagram of the Java virtual machine that includes the major subsystems and memory areas described in the specification. As mentioned in previous chapters, each Java virtual machine has a class loader subsystem: a mechanism for loading types (classes and interfaces) given fully qualified names. Each Java virtual machine also has an execution engine: a mechanism responsible for executing the instructions contained in the methods of loaded classes.

undefined

The internal architecture of the Java virtual machine.

When a Java virtual machine runs a program, it needs memory to store many things, including bytecodes and other information it extracts from loaded class files, objects the program instantiates, parameters to methods, return values, local variables, and intermediate results of computations. The Java virtual machine organizes the memory it needs to execute a program into several runtime data areas.

Although the same runtime data areas exist in some form in every Java virtual machine implementation, their specification is quite abstract. Many decisions about the structural details of the runtime data areas are left to the designers of individual implementations.

Different implementations of the virtual machine can have very different memory constraints. Some implementations may have a lot of memory in which to work, others may have very little. Some implementations may be able to take advantage of virtual memory, others may not. The abstract nature of the specification of the runtime data areas helps make it easier to implement the Java virtual machine on a wide variety of computers and devices.

Some runtime data areas are shared among all of an application's threads and others are unique to individual threads. Each instance of the Java virtual machine has one method area and one heap. These areas are shared by all threads running inside the virtual machine. When the virtual machine loads a class file, it parses information about a type from the binary data contained in the class file. It places this type information into the method area. As the program runs, the virtual machine places all objects the program instantiates onto the heap. See Figure  for a graphical depiction of these memory areas.

 undefined

As each new thread comes into existence, it gets its own pc register (program counter) and Java stack. If the thread is executing a Java method (not a native method), the value of the pc register indicates the next instruction to execute. A thread's Java stack stores the state of Java (not native) method invocations for the thread. The state of a Java method invocation includes its local variables, the parameters with which it was invoked, its return value (if any), and intermediate calculations. The state of native method invocations is stored in an implementation-dependent way in native method stacks, as well as possibly in registers or other implementation-dependent memory areas.

The Java stack is composed of stack frames (or frames). A stack frame contains the state of one Java method invocation. When a thread invokes a method, the Java virtual machine pushes a new frame onto that thread's Java stack. When the method completes, the virtual machine pops and discards the frame for that method.

The Java virtual machine has no registers to hold intermediate data values. The instruction set uses the Java stack for storage of intermediate data values. This approach was taken by Java's designers to keep the Java virtual machine's instruction set compact and to facilitate implementation on architectures with few or irregular general purpose registers. In addition, the stack-based architecture of the Java virtual machine's instruction set facilitates the code optimization work done by just-in-time and dynamic compilers that operate at run-time in some virtual machine implementations.

See Figure 5-3 for a graphical depiction of the memory areas the Java virtual machine creates for each thread. These areas are private to the owning thread. No thread can access the pc register or Java stack of another thread.

 undefined

Figure 5-3 shows a snapshot of a virtual machine instance in which three threads are executing. At the instant of the snapshot, threads one and two are executing Java methods. Thread three is executing a native method.

In Figure 5-3, as in all graphical depictions of the Java stack in this book, the stacks are shown growing downwards. The "top" of each stack is shown at the bottom of the figure. Stack frames for currently executing methods are shown in a lighter shade. For threads that are currently executing a Java method, the pc register indicates the next instruction to execute. In Figure 5-3, such pc registers (the ones for threads one and two) are shown in a lighter shade. Because thread three is currently executing a native method, the contents of its pc register--the one shown in dark gray--is undefined.

 

Java Project with source code - A program to identify decimal To Roman using frame and awt package

Jun 062016

Save This file ConvertDec.java

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class ConvertDec extends JFrame{
public JLabel alabel,blabel,clabel;
public JPanel x,down,alien,last;
public JTextField screenfield;
public ButtonGroup radioGroup;
JRadioButton on,off;
FlowLayout rd;
JButton b;
NumberUsed polly=new NumberUsed();
public ConvertDec(){
super("Leonard Converter");

Container can=getContentPane();
can.setLayout(new FlowLayout());
Icon bendz=new ImageIcon( "cute.jpg");
alabel=new JLabel(bendz,SwingConstants.CENTER);
alabel.setToolTipText( "IISPL BS Computer Science II-B");
can.add(alabel);
Icon leon=new ImageIcon( "cute1.jpg");
blabel=new JLabel(leon,SwingConstants.RIGHT);
blabel.setToolTipText( "Leonard Bendal 085-Prk 5 Brgy.3 EM's Bo. East Leg. City (052)820-46-40");
can.add(blabel);
last=new JPanel();
clabel=new JLabel("CS13 PROJECT");
last.add(clabel);
can.add(last);

x=polly.s;
can.add(x);

b=new JButton();
b=polly.leftbutton1;

rd=new FlowLayout();
down=new JPanel();
down.setLayout(rd);
on=new JRadioButton("ON",true);
on.addItemListener(new ItemListener(){
public void itemStateChanged(ItemEvent event){
NumberUsed polly1=new NumberUsed();
polly1=polly;
if(on.isSelected()){
polly1.leftbutton1.setEnabled(true);
polly1.centerbutton1.setEnabled(true);
polly1.rightbutton1.setEnabled(true);
polly1.leftbutton2.setEnabled(true);
polly1.centerbutton2.setEnabled(true);
polly1.rightbutton2.setEnabled(true);
polly1.leftbutton3.setEnabled(true);
polly1.centerbutton3.setEnabled(true);
polly1.rightbutton3.setEnabled(true);
polly1.leftbutton4.setEnabled(true);
polly1.centerbutton4.setEnabled(true);
polly1.rightbutton4.setEnabled(true);
polly1.bendal="";
polly1.currentNumber=0;
}
}
});
down.add(on);
off=new JRadioButton("OFF",false);
off.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent event){
NumberUsed polly1=new NumberUsed();
polly1=polly;
polly1.leftbutton1.setEnabled(false);
polly1.centerbutton1.setEnabled(false);
polly1.rightbutton1.setEnabled(false);
polly1.leftbutton2.setEnabled(false);
polly1.centerbutton2.setEnabled(false);
polly1.rightbutton2.setEnabled(false);
polly1.leftbutton3.setEnabled(false);
polly1.centerbutton3.setEnabled(false);
polly1.rightbutton3.setEnabled(false);
polly1.leftbutton4.setEnabled(false);
polly1.centerbutton4.setEnabled(false);
polly1.rightbutton4.setEnabled(false);
polly1.bend.setText("");
polly1.bendal="";
polly1.currentNumber=0;
}
});
down.add(off);
radioGroup=new ButtonGroup();
radioGroup.add(on);
radioGroup.add(off);
can.add(down);

can.add(polly.xpanel);
can.add(polly.ypanel);
can.add(polly.zpanel);
can.add(polly.lpanel);


setSize(300,550);
setVisible(true);
}

public static void main(String args[]){
ConvertDec Apply=new ConvertDec();
Apply.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}

 

Second File To Be Saved NumberUsed.java


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class NumberUsed{
public JButton leftbutton1,centerbutton1,rightbutton1;
public JButton leftbutton2,centerbutton2,rightbutton2;
public JButton leftbutton3,centerbutton3,rightbutton3;
public JButton leftbutton4,centerbutton4,rightbutton4;
public JPanel lpanel,xpanel,ypanel,zpanel,s;
FlowLayout Dec1,Dec2,Dec3,Dec4;
public JTextField bend;

boolean isfirstNumber=true;
public int currentNumber=0;

public String bendal="";

public NumberUsed (){

s=new JPanel();
bend=new JTextField(bendal,20);
bend.setEditable(false);
s.add(bend);

Dec1=new FlowLayout();
xpanel=new JPanel();
xpanel.setLayout(Dec1);

leftbutton1=new JButton( " 1 " );
leftbutton1.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent event){
int num;
if(isfirstNumber){
isfirstNumber=!isfirstNumber;
num=(currentNumber*10)+1;
currentNumber=1;
bendal+="1";
bend.setText(bendal);
}else{
num=(currentNumber*10)+1;
bendal+="1";
currentNumber=num;
bend.setText(bendal);
}

}
}
);
xpanel.add(leftbutton1);


centerbutton1=new JButton( " 2 " );
centerbutton1.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent event){
int num;
if(isfirstNumber){
isfirstNumber=!isfirstNumber;
num=(currentNumber*10)+2;
currentNumber=1;
bendal+="2";
bend.setText(bendal);
}else{
num=(currentNumber*10)+2;
bendal+="2";
currentNumber=num;
bend.setText(bendal);
}
}
}
);
xpanel.add(centerbutton1);

rightbutton1=new JButton( " 3 " );
rightbutton1.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent event){
int num;
if(isfirstNumber){
isfirstNumber=!isfirstNumber;
num=(currentNumber*10)+3;
currentNumber=3;
bendal+="3";
bend.setText(bendal);
}else{
num=(currentNumber*10)+3;
bendal+="3";
currentNumber=num;
bend.setText(bendal);
}
}
}
);
xpanel.add(rightbutton1);


Dec2=new FlowLayout();
ypanel=new JPanel();
ypanel.setLayout(Dec2);

leftbutton2=new JButton( " 4 " );
leftbutton2.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent event){
int num;
if(isfirstNumber){
isfirstNumber=!isfirstNumber;
num=(currentNumber*10)+4;
currentNumber=4;
bendal+="4";
bend.setText(bendal);
}else{
num=(currentNumber*10)+4;
bendal+="4";
currentNumber=num;
bend.setText(bendal);
}
}
}
);
ypanel.add(leftbutton2);

centerbutton2=new JButton( " 5 " );
centerbutton2.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent event){
int num;
if(isfirstNumber){
isfirstNumber=!isfirstNumber;
num=(currentNumber*10)+5;
currentNumber=5;
bendal+="5";
bend.setText(bendal);
}else{
num=(currentNumber*10)+5;
bendal+="5";
currentNumber=num;
bend.setText(bendal);
}
}
}
);
ypanel.add(centerbutton2);

rightbutton2=new JButton( " 6 " );
rightbutton2.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent event){
int num;
if(isfirstNumber){
isfirstNumber=!isfirstNumber;
num=(currentNumber*10)+6;
currentNumber=6;
bendal+="6";
bend.setText(bendal);
}else{
num=(currentNumber*10)+6;
bendal+="6";
currentNumber=num;
bend.setText(bendal);
}

}
}
);
ypanel.add(rightbutton2);

Dec3=new FlowLayout();
zpanel=new JPanel();
zpanel.setLayout(Dec3);

leftbutton3=new JButton( " 7 " );
leftbutton3.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent event){
int num;
if(isfirstNumber){
isfirstNumber=!isfirstNumber;
num=(currentNumber*10)+7;
currentNumber=7;
bendal+="7";
bend.setText(bendal);
}else{
num=(currentNumber*10)+7;
bendal+="7";
currentNumber=num;
bend.setText(bendal);
}
}
}
);
zpanel.add(leftbutton3);

centerbutton3=new JButton( " 8 " );
centerbutton3.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent event){
int num;
if(isfirstNumber){
isfirstNumber=!isfirstNumber;
num=(currentNumber*10)+8;
currentNumber=8;
bendal+="8";
bend.setText(bendal);
}else{
num=(currentNumber*10)+8;
bendal+="8";
currentNumber=num;
bend.setText(bendal);
}
}
}
);
zpanel.add(centerbutton3);

rightbutton3=new JButton( " 9 " );
rightbutton3.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent event){
int num;
if(isfirstNumber){
isfirstNumber=!isfirstNumber;
num=(currentNumber*10)+9;
currentNumber=9;
bendal+="9";
bend.setText(bendal);
}else{
num=(currentNumber*10)+9;
bendal+="9";
currentNumber=num;
bend.setText(bendal);
}
}
}
);
zpanel.add(rightbutton3);

Dec4=new FlowLayout();
lpanel=new JPanel();
lpanel.setLayout(Dec4);

leftbutton4=new JButton( " 0 " );
leftbutton4.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent event){
int num;
if(isfirstNumber){
isfirstNumber=!isfirstNumber;
num=(currentNumber*10)+0;
currentNumber=0;
bendal+="0";
bend.setText(bendal);
}else{
num=(currentNumber*10)+0;
bendal+="0";
currentNumber=num;
bend.setText(bendal);
}
}
}
);
lpanel.add(leftbutton4);

centerbutton4=new JButton( " CE " );
centerbutton4.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent event){
int num;
num=(currentNumber*0);
bendal="";
currentNumber=num;
bend.setText(bendal);


}
}
);

lpanel.add(centerbutton4);

rightbutton4=new JButton( " Cvrt" );
rightbutton4.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent event){

convert(currentNumber);
currentNumber=0;
bendal="";

}
}
);

lpanel.add(rightbutton4);

}
public void convert(int num){
int Number=num;
bendal="";

if(Number>999999999){
bendal="";
bendal="Syntax Limit (Billion) Reached";
}
if(Number==0)
bendal="Syntax Roman Not Exist";

while(Number!=0 && Number<=999999999){

if(Number==1000000){
bendal+="M.";
Number=Number-1000000;
}else if(Number>1000000){
bendal+="M.";
Number=Number-1000000;
}else if(Number>=500000){
if(Number>=900000){
bendal+="C.M.";
Number=Number-900000;
}else{
Number=Number-500000;
bendal+="D.";
}
}
else if(Number>=100000){
if(Number>=400000){
bendal+="C.D.";
Number=Number-400000;
}else{
bendal+="C.";
Number=Number-100000;
}
}
else if(Number>=50000){
if(Number>=90000){
bendal+="X.C.";
Number=Number-90000;
}else{
bendal+="L.";
Number=Number-50000;
}
}
else if(Number>=10000){
if(Number>=40000){
bendal+="X.L.";
Number=Number-40000;
}else{
bendal+="X.";
Number=Number-10000;
}
}
else if(Number>=5000){
if(Number>=9000){
bendal+="MX.";
Number=Number-9000;
}else{
bendal+="V.";
Number=Number-5000;
}
}

else if(Number>=1000){
if(Number>=4000){
bendal+="MV.";
Number=Number-4000;
}
else{
bendal+="M";
Number=Number-1000;
}
}
else if(Number>=500){
if(Number>=900){
bendal+="CM";
Number=Number-900;
}else{
Number=Number-500;
bendal+="D";
}
}
else if(Number>=100){
if(Number>=400){
bendal+="CD";
Number=Number-400;
}else{
Number=Number-100;
bendal+="C";
}
}
else if(Number>=50){
if(Number>=90){
bendal+="XC";
Number=Number-90;
}else{
Number=Number-50;
bendal+="L";
}
}
else if(Number>=10){
if(Number>=40){
bendal+="XL";
Number=Number-40;
}else{
Number=Number-10;
bendal+="X";
}
}
else if(Number>=5){
if(Number>=9){
bendal+="IX";
Number=Number-9;
}else{
Number=Number-5;
bendal+="V";
}
}
else if(Number>=1){
if(Number>=4){
bendal+="IV";
Number=Number-4;
}else{
Number=Number-1;
bendal+="I";
}
}else if(Number==1){
bendal+="I";
Number=Number-1;
}
}
bend.setText(bendal);
}


}

Java Here is the list of methods supported by String class - IISPL

May 182016
  • String Methods:
    Here is the list of methods supported by String class:
    SN Methods with Description
    1 char charAt(int index)
    Returns the character at the specified index.
  • 2 int compareTo(Object o)
    Compares this String to another Object.
  • 3 int compareTo(String anotherString)
    Compares two strings lexicographically.
  • 4 int compareToIgnoreCase(String str)
    Compares two strings lexicographically, ignoring case differences.
  • 5 String concat(String str)
    Concatenates the specified string to the end of this string.
  • 6 boolean contentEquals(StringBuffer sb)
    Returns true if and only if this String represents the same sequence of characters as the specified StringBuffer.
  • 7 static String copyValueOf(char[] data)
    Returns a String that represents the character sequence in the array specified.
  • 8 static String copyValueOf(char[] data, int offset, int count)
    Returns a String that represents the character sequence in the array specified.
  • 9 boolean endsWith(String suffix)
    Tests if this string ends with the specified suffix.
  • 10 boolean equals(Object anObject)
    Compares this string to the specified object.
  • 11 boolean equalsIgnoreCase(String anotherString)
    Compares this String to another String, ignoring case considerations.
  • 12 byte getBytes()
    Encodes this String into a sequence of bytes using the platform's default charset, storing the result into a new byte array.
  • 13 byte[] getBytes(String charsetName
    Encodes this String into a sequence of bytes using the named charset, storing the result into a new byte array.
  • 14 void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
    Copies characters from this string into the destination character array.
  • 15 int hashCode()
    Returns a hash code for this string.
  • 16 int indexOf(int ch)
    Returns the index within this string of the first occurrence of the specified character.
  • 17 int indexOf(int ch, int fromIndex)
    Returns the index within this string of the first occurrence of the specified character, starting the search at the specified index.
  • 18 int indexOf(String str)
    Returns the index within this string of the first occurrence of the specified substring.
  • 19 int indexOf(String str, int fromIndex)
    Returns the index within this string of the first occurrence of the specified substring, starting at the specified index
  • 20 String intern()
    Returns a canonical representation for the string object.
  • 21 int lastIndexOf(int ch)
    Returns the index within this string of the last occurrence of the specified character.
  • 22 int lastIndexOf(int ch, int fromIndex)
    Returns the index within this string of the last occurrence of the specified character, searching backward starting at the specified index.
  • 23 int lastIndexOf(String str)
    Returns the index within this string of the rightmost occurrence of the specified substring.
  • 24 int lastIndexOf(String str, int fromIndex)
    Returns the index within this string of the last occurrence of the specified substring, searching backward starting at the specified index.
  • 25 int length()
    Returns the length of this string.
  • 26 boolean matches(String regex)
    Tells whether or not this string matches the given regular expression.
  • 27 boolean regionMatches(boolean ignoreCase, int toffset, String other, int ooffset, int len)
    Tests if two string regions are equal.
  • 28 boolean regionMatches(int toffset, String other, int ooffset, int len)
    Tests if two string regions are equal
  • 29 String replace(char oldChar, char newChar)
    Returns a new string resulting from replacing all occurrences of oldChar in this string with newChar.
  • 30 String replaceAll(String regex, String replacement
    Replaces each substring of this string that matches the given regular expression with the given replacement.
  • 31 String replaceFirst(String regex, String replacement)
    Replaces the first substring of this string that matches the given regular expression with the given replacement.
  • 32 String[] split(String regex)
    Splits this string around matches of the given regular expression.
  • 33 String[] split(String regex, int limit)
    Splits this string around matches of the given regular expression.
  • 34 boolean startsWith(String prefix)
    Tests if this string starts with the specified prefix.
  • 35 boolean startsWith(String prefix, int toffset)
    Tests if this string starts with the specified prefix beginning a specified index.
  • 36 CharSequence subSequence(int beginIndex, int endIndex)
    Returns a new character sequence that is a subsequence of this sequence.
  • 37 String substring(int beginIndex)
    Returns a new string that is a substring of this string.
  • 38 String substring(int beginIndex, int endIndex)
    Returns a new string that is a substring of this string.
  • 39 char[] toCharArray()
    Converts this string to a new character array.
  • 40 String toLowerCase()
    Converts all of the characters in this String to lower case using the rules of the default locale.
  • 41 String toLowerCase(Locale locale)
    Converts all of the characters in this String to lower case using the rules of the given Locale.
  • 42 String toString()
    This object (which is already a string!) is itself returned.
  • 43 String toUpperCase()
    Converts all of the characters in this String to upper case using the rules of the default locale.
  • 44 String toUpperCase(Locale locale)
    Converts all of the characters in this String to upper case using the rules of the given Locale.
  • 45 String trim()
    Returns a copy of the string, with leading and trailing whitespace omitted.
  • 46 static String valueOf(primitive data type x)
    Returns the string representation of the passed data type argument.

 

Message From Director IISPL Ahmedabad - Anil Reja

Apr 112016

Who I am ? 

undefined
Anil Kumar Reja,

Diretor : IISPL Ahmedabad [ Gujrat ]


A Graduate Mechanical engineer with an unbounded passion for performing street plays. served almost three decade span of life in ONGC performed more than 100 street plays and stage shows till now spreading awareness among masses about social problems like AIDS, dowry system, untouchability, terrorism, etc in urban as well as rural Gujarat and other parts of the country. I took theater after the sudden demise of my beloved mother in 1994, which shook me to the roots, and is channelizing all his creative energy towards promoting the cause of theater, a fast diminishing popular form of entertainment. Now entered a new lease of life in Education Sector. Even as a growing child, 8-10 years old, the society at large, the divide between the rich and the poor, ups and downs in life that my family underwent and things like that are deeply etched in my memory. Some of my childhood friends could not afford to pay school fees and became rickshaw pullers or daily-wage earners; while some went on to become professionals like engineers, doctors, managers, etc. I’ve been associated with people from all sections of society – under-privileged as well as affluent – and I felt that the "world of drama" is the most appropriate medium to communicate your feelings, ethos and pathos, to the people around us. Even as a child I had become associated with ‘Ram Lila,’ a local group of child artistes, narrating the story of Lord Ram and his wife Sita. I became the Vice President of the group about 24 years ago. My journey for bread and butter had started, and I got my first job with a private concern at Jhansi at a monthly stipend of Rs.250. The work center was about 10 km away from my home; it was a great pleasure cycling all the way with my fellow colleagues and friends. Later, I completed my apprentice training at HMT (Tractor Division), Pinjore, near Chandigarh. My family was going through a tough phase, and it was my responsibility to provide for the education of my two younger brothers and look after my only sister. The prayers of my well-wishers, especially my mother and grandmother, didn’t go in vain, and I got the job offer from ONGC and marry off my only sister, and all my siblings are well settled in life. I got married to a fashion designer in 1986, and I’m fortunate to have my wife’s unstinted support in all my endeavors. She has also conducted a few fashion shows in Ahmadabad. We’re blessed with a son who’s working in Corporate affairs , Adani , and daughter-in-law not really daughter @ Dr Sneha Gupta Reja is makes a complete family that count four numbers . We expect from both of them to grow up to be an honest and loyal citizen of this great country. I can never forget the 3rd of January 1994 in my whole life. That was the day my mother, who means so much to me, departed from this world. The loss of my beloved mother, who was the supreme source of strength for me in life, made me feel miserable and all alone. Yes, I clawed my way back to normal life thanks to this ‘world of drama’. It sustained me and provided me with the required strength, power and confidence, and an even greater zeal to communicate with people through theater activities. I plunged headlong into theater activities, which keeps me ticking in my life. We’ve completed more than 100 street plays and stage shows till now in Ahmadabad and other parts of the country. I was one of the team members of the Regional Cultural Meet held at Dehra Dun on ONGC Day 2000.We’re Runners-up representing the then WRBC and the now WOBU. We received the trophy from the then C&MD Mr. B C Bora.

Thanks-regards
Yours sincerely,
AnilKumar Reja

Programming In C - Learn Programming Language From IISPL

Apr 112016

undefinedC Language Syllabus

What is C ?

  • Execution of C Program
  • History
  • Structure of C Program


Variables and Keywords :

  • Character Set
  • Identifier
  • Variable
  • Keywords
  • Escape Sequence Characters

Constants :

  • Real Constant
  • Integer Constant
  • Character Constant
  • String Constant

Data Types :

Data Types
Qualifier
Enum
Typedef
Operators :

Assignment Operator
Arithmetic Operators
Logical Operators
Relational Operators
Shorthand Operators
Unary Operators
Conditional / Ternary Operator
Biwise Operators
Operator Precedence and Associativity
If Statement
If-Else Statement
Nested If-Else
Switch Case
Looping Statements

Looping / Iterative Statements
while
do while
for loop
Break Statement
Continue Statement
Goto
Functions :

Function call by passing value
Function call by returning value
Function call by passing and returning value
Recursion
Storage Classes :

Storage Classes
Automatic Storage Class (auto)
Register Storage Class (register)
Static Storage Class (static)
External Storage Class (extern)
Array :

Array
Single / One Dimensional Array
Two Dimensional Array
Structure :

Structure
Array in Structures
Structure with Array
Difference between array and structure
Pointer

Union :

Union
Difference between structure and union
Strings
File Handling
Header Files :

Header File
Assert.h
Ctype.h
Math.h
Process.h
String.h
Time.h
Programs Library :

Projects Library :

Atom



Powred By : CRAZY24X7 [IT] RESEARCH AND DEVELOPMENT

Registered Office : D 308, 311 3rd Floor, Patna 800001, Dumraon Palace, New Dak Bungalow Road, Patna, Bihar 800001.. Tel : 0612-3220455/66215555 | Corporate Office : Shop No :-09, Madhav Palaza, Motera Stadium, Ahmedabad, Gujarat - 380005 Mob : 7281000365/366, 9905559000