சி++

கட்டற்ற கலைக்களஞ்சியமான விக்கிப்பீடியாவில் இருந்து.
(C++ இலிருந்து வழிமாற்றப்பட்டது)
தாவிச் செல்லவும்: வழிசெலுத்தல், தேடல்
சி++ (C++)
C plus plus book.jpg
நிரலாக்க கருத்தோட்டம்: பல நிரலாக்க மொழி
தோன்றிய ஆண்டு: 1983
உருவாக்குநர்: பியார்னே இசுற்றூத்திரப்பு
இயல்பு முறை: நிலையான, ​​பாதுகாப்பற்ற, நியமனம்(Static, unsafe, nominative)
முதன்மைப் பயனாக்கங்கள்: {{{நடைமுறைப்படுத்துவோர்கள்}}}
Dialects: ஐ.எஸ்.ஓ/ஐ.ஈ.சி சி++ 1998, ஐ.எஸ்.ஓ/ஐ.ஈ.சி சி++ 2003
பிறமொழித்தாக்கங்கள்: சி, அடா
இம்மொழியினால் ஏற்பட்ட தாக்கங்கள்: சி#(C#), பேர்ல்(Perl), எல்.சி.பி(LPC), பைக்(Pike), அடா95(Ada95), ஜாவா(Java), பி.எச்.பி(PHP), டி(D), சி99(c99), பால்கன்(Falcon), சீட்7(Seed7), லுஅ(Lua)
இயக்குதளம்: பல இயங்குதளங்களில் இயங்கும்
இணையத்தளம்: News, status & discussion about Standard C++

சி++ சியின் மேம்பாடுகளைக் கொண்ட ஓர் பொதுவான நிரலாக்கல் மொழியாகும். இது மேல் நிலை நிரலாக்கம் (High Level Programming) மற்றும் வன்பொருட்களை கையாளும் கீழ்நிலை நிரலாக்கம் ஆகிய இரண்டையும் ஆதரிப்பதால் இது ஓர் இடை நிலை மொழியாகும். இம்மொழியில் நிரலாக்க வரிகள் இவ்வாறுதான் வரவேண்டும் (அதாவது இந்தவரியில் இந்த நிரலாக்கம் தான் என்று கோபால் நிரலாக்க மொழி போன்ற கட்டுப்பாடுகள் ஏதும் கிடையாது. பொதுவாக சி++ நிரல்கள் கம்பைல் செய்யப்படும். இவ்வாறு கம்பைல் செய்யப்படும்போது அக்கணினியை இலக்கு வைத்த இயந்திரமொழிக்குக் கொண்டுவரப்படும்.) சி++ மொழி 1980 ஆம் ஆண்டு தொடக்கத்தில் ஏடீ & டீ பெல் ஆய்வுக் கூடத்தில் பியார்னே இசுற்றூத்திரப்பு என்பவரால் உருவாக்கப்பட்டது.

வரலாறு[தொகு]

அமெரிக்க பெல் ஆய்வுக்கூடத்தில் பணியாற்றிய பியார்னே இசுற்றூத்திரப்பு சியை மேம்படுத்தும் முகமாக 1979 ஆம் ஆண்டில் வகுப்புகளுடன் கூடிய சி (C with Classes) ஆக விருத்தி செய்தார். இது 1983 ஆம் ஆண்டில் சி மொழியில் வரும் ++ ஆனது increment operator ஐக் குறிக்கும் வகையில் இதுவும் சி++ என மாற்றப்பட்டது.

தத்துவம்[தொகு]

சி++ இன் வாழ்நாள் முழுவதும், அதன் வளர்ச்சி மற்றும் அதன் பரிணாம வளர்ச்சியில் பின்பற்றப்பட வேண்டும் என்று ஒரு விதிமுறை தொகுப்பு முறைசாராமல் நிர்வகிக்கப்பட்டு வருகின்றது.

  • இது உண்மையான பிரச்சினைகள் மற்றும் அதன் அம்சங்களைக் கொண்டு இயக்கப்படுவதோடு உண்மையான உலக திட்டங்களில் உடனடியாகப் பயனுள்ளதாக இருக்க வேண்டும்.
  • இதன் அம்சங்கள் நடைமுறைச் சாத்தியம் மிக்கனவாக இருக்க வேண்டும்.
  • நிரலாளர்கள் தங்களது சொந்த நிரலாக்கப் பாணியில் எடுக்க உருவாக்கச் சுதந்திரம் கொடுப்பதாக இருக்க வேண்டும், மற்றும் அந்த பாணி முழுமையாக சி++ ஐ ஆதரிக்க வேண்டும்.
  • ஒரு பயனுள்ள அம்சத்தை அனுமதிப்பது சி++ இன் ஒவ்வொரு சாத்தியமான தவறைத் தடுப்பதை விட முக்கியமானது.
  • சி++ இன் கீழே எவ்வித மொழியும் இருக்கக் கூடாது.
  • நீங்கள் பயன்படுத்தத் தேவையில்லை என்று நினைக்கும் எந்த அம்சங்களையும் கொடுக்கத் தேவையில்லை.
  • நிரலாக்குநர் என்ன செய்ய வேண்டும் என விரும்புகின்றார் என்று தெரியவில்லை என்றால், நிரலாக்குநரே அதைக் குறிப்பிட அனுமதிக்கின்றது


மொழி அமைப்பு[தொகு]

தரவு இனங்கள்[தொகு]

  • void -
  • char - character
  • int - integer
  • float - floating point number
  • double - double precision float
  • bool - Boolean value, true or false
  • wchar_t - wide character

பெயர் வெளி[தொகு]

மாறிலிகள்[தொகு]

செயற்குறிகள்[தொகு]

உலகே வணக்கம்[தொகு]

# include <iostream>
using namespace std;
 
int main ()
{
  cout << "Hello World!";
  return 0;
}
Hello World!


அடிப்படை உள்ளீடும் வெளியீடும்[தொகு]

வெளியீடு[தொகு]

  char *name="John";
  char *country="India";
 
  cout << "Hello, I am " << name << ". I am from "<< country << endl;

உள்ளீடு[தொகு]

# include <iostream>
using namespace std;
 
int main ()
{
  int i;
  cout << "Please enter an integer value: ";
  cin >> i;
  cout << "The value you entered is " << i;
  cout << " and its squre  is " << i*i << ".\n";
  return 0;
}
Please enter an integer value: 5
The value you entered is 5 and its square is 25.


கட்டுப்பாடு[தொகு]

எனில்/if else if[தொகு]

string selection;
selection = "ta";
 
if (selection=="hi")
  cout<< "You have selected the Tamil Wikipedia"; 
else if (selection=="ta")
  cout<< "You have selected the Tamil Wikibooks"; 
else
  cout<< "You have selected the Tamil Wikisource";
You have selected the Tamil Wikipedia


தெரிவு/switch[தொகு]

சி++ பி.எச்.பி போன்ற இதர மொழிகள் போல் அல்லாமல் சொற்தொடர்களை தெரிவில் பயன்படுத்த முடியாது.

int selection;
selection = 2;
switch (selection){
  case 1:
  	cout<< "You have selected Tamil Wikipedia";
  	break;
  case 2:
    cout<< "You have selected Tamil Wikibooks";
    break;
  default:
    cout<< "You have selected Tamil Wikisource";
    break;
    }
You have selected Tamil Wikibooks


சுற்று[தொகு]

while சுற்று[தொகு]

int i=1;
while(i<=5)
  {
  cout << "The number is "<< i <<"\n" ;
  i++;
  }
The number is 1
The number is 2
The number is 3
The number is 4
The number is 5


do while சுற்று[தொகு]

int i=1;
do {
	cout << "The number is " << i << "\n";
	i++;
    } while (i <= 5);
The number is 1
The number is 2
The number is 3
The number is 4
The number is 5


for சுற்று[தொகு]

int i=1;
 
for (i=1; i<=5; i++)
{
  cout << "Iteration:"<<i<<" Hello World!\n";
}
Iteration:1 Hello World!
Iteration:2 Hello World!
Iteration:3 Hello World!
Iteration:4 Hello World!
Iteration:5 Hello World!


செயலி[தொகு]

pass by value[தொகு]

int main (){
  int add (int a, int b);
  int ans;
  ans = add(4, 2);
  cout << "Ths sum is " << ans << "\n";
  return 0;
  }
 
int add (int a, int b){
	int ans;
	ans = a + b;
	return ans;
	}
The Sum is 6


pass by references[தொகு]

int main (){
  void passbyref (int& a, int& b);
  int a=1, b=3;
  passbyref (a, b);
  cout << "a=" << a << ", b=" << b << "\n";
  return 0;
  }
 
void passbyref (int& a, int& b){
  a = a + 10;
  b= b + 10;
  }
a=11, b=13;


பொருள் நோக்கு நிரலாக்கம்[தொகு]

class Calculator {
    int x, y;
    public:
    	void set_values (int,int);
    	int add () {
			int ans;
			ans = x + y;
			return ans;
			}
	};
 
void Calculator::set_values (int a, int b) {
  	x = a;
	y = b;
	}
 
int main () {
	Calculator c1;
  	c1.set_values (5, 3);
  	cout << "The sum is: " << c1.add() << endl;
  	return 0;
	}
The sum is: 8


நினைவாக ஒதுக்கீடு[தொகு]

சி ++ நன்கு வகையான நினைவாக ஒதுக்கீடு கொண்டு உள்ளது நிலையான நினைவாக ஒதுக்கீடு:இந்த நிலையான நினைவாக ஒதுக்கீடு என்பது ஒரு நிலையான வேரியபுல்கு ஒரு பொருளை ஒதுக்கீடுசெய்வது ஆகும் இந்த ஒதுக்கீடு கம்பையில் டைம்இன் போது நடை பெரும் ஒரு செயல் ஆகும் ஒதுக்கப்பட்ட சேமிப்பு பகுதி ஒரு நிலையான இடமாகும் செமிகபடுபோது அதனுடன் செயல்படும் நிரல் அமைந்து இருக்கும் .இது போன்ற திறவுசொர்கள் ஸ்டாடிக் என்ற சொலுடன் இணைத்து டிச்ளைர் செய்யப்படும். மாறும் நினைவாக ஒதுக்கீடுஇதில் செவிப்பு நமது தேவைக்கு ஏற்ப மாற்றி அமைத்து கொள்ளும் அளவிற்கு உள்ளது .

# include <iostream.h>
# include <conio.h>
# include <process.h>
 
class stack
{
 int arr[50];
 int top;
 public:
    int get_top();
    stack()
    {
     top=-1;
    }
    void push(int);
    int pop();
    void peep();
};
int display_menu();
int stack :: get_top()
{
 return(top);
}
void stack :: push(int no)
{
  arr[top+1]=no;
  top=top+1;
}
 
int stack :: pop()
{
  int no;
  if(top<0)
  {
   return(NULL);
  }
  else
  {
  no=arr[top];
  top=top-1;
  return(no);
  }
}
 
void stack :: peep()
{
  if(top>=0)
  {
    for(int i=top;i>=0;i--)
    {
        cout<<"Stack ["<<i<<"] :"<<arr[i]<<endl;
    }
  }
 
 
 
 
 
 
 
  else
  {
     cout<<"Empty Stack !!!"<<endl;
  }
}
 
void main()
{
 stack s1;
 while(1)
 {
  switch(display_menu())
  {
   case 1: cout<<"Enter Number to push :";
       int no;
       cin>>no;
       s1.push(no);
       s1.peep();
       getch();
       break;
   case 2:
       no=s1.pop();
       if(no!=NULL)
       {
        cout<<"Stack ["<<s1.get_top()+1<<"] :"<<no;
       }
       else
       {
        cout<<"Empty Stack !!!"<<endl;
       }
       getch();
       break;
   case 3: s1.peep();
       getch();
       break;
   case 4: exit(1);
 
  }
 }
}
 
int display_menu()
{
 clrscr();
 int ch;
 cout<<endl;
 cout<<"\t\t\t| 1 | : PUSH"<<endl;
 cout<<"\t\t\t| 2 | : POP"<<endl;
 cout<<"\t\t\t| 3 | : PEEP"<<endl;
 cout<<"\t\t\t| 4 | : Exit"<<endl;
 cout<<"\t\t\tEnter Your Choice :";
 cin>>ch;
 return(ch);
}


இவற்றையும் பாக்க[தொகு]

வெளி இணைப்புகள்[தொகு]

"http://ta.wikipedia.org/w/index.php?title=சி%2B%2B&oldid=1664350" இருந்து மீள்விக்கப்பட்டது