Eclipse IDE Views

Eclipse IDE contains the number of views which are useful during development to get idea of project workspace and hierarchy of the project

Eclipse IDE Menubar

We know IDE is used to create the code in professional manner and efficiently. During the process of coding we may find certain views in the code that are very useful. It is used to show the graphical representations of the project metadata.

Eclipse Views

If you carefully observe the above screenshot then you can understand there are 5 views in the eclipse window –

Repositioning Views :

We can reposition all the views in the eclipse just by dragging it to the other positions. Possible place holders would be displayed using the green border as shown in below screenshot

Eclipse Repositioning Views

Opening a view

Now suppose you want to open the new view that is not present inside the default list of views then we can do following steps.

Eclipse Show View Option

If you did not find the view that you are looking for then just click on the other menu item.

Eclipse Open Other Views

Eclipse IDE Menubar

Like other IDE we can find there is top toolbar in Eclipse IDE. We can use this toolbar to navigate between different menus.

Eclipse IDE Menubar

Below is the list of the menus available in the Eclipse IDE Window –

  1. File menu
  2. Edit menu
  3. Navigate menu
  4. Search menu
  5. Project menu
  6. Run menu
  7. Window menu
  8. Help menu

Eclipse IDE Toolbar

Menu NameDescription
FileFile menu is used to open files for opening, editing, closing, saving the contents of file. It also provides the rename facilities along with switching workspace. It also allows you to import and export workspace content and shut down Eclipse.
EditIt provides editing options such as copy & paste.
NavigateIt provides the quick navigate menus used for quickly locating the resources.
SearchSearch menu provides different ways to search the workspace for files and text.
ProjectProject menu provides different options used for building a project , building workspace and cleaning workspace.
RunRun menu used to run program and debug it using debug mode.
WindowWindow menu allows you to open and close views and perspectives.
HelpHelp menu used to open Help window, Eclipse Marketplace view or Install new plug-ins. The about Eclipse menu item gives you version information.
SourceOnly visible when Java editor is open. It provides options for editing Java source code.

Eclipse IDE Windows : Views

After setting up the eclipse we need to open the eclipse. Upon launching the eclipse window we find some of the visible screens.

Eclipse IDE Windows : Views

Some of the visible areas of the Eclipse IDE are –

  1. Editor Views
  2. Code Editors
  3. Menu Bar
  4. Toolbar

Eclipse Windows and Views

Eclipse Perspective

  1. If you see carefully at the title bar of the eclipse window , you will find the name of the eclipse perspective.
  2. Initial collection and arrangement of the eclipse windows and views is called as Eclipse perspective.
  3. Though we can have multiple prospectives but at a time only one perspective can be visible.

Some of the eclipse perspectives are –

PerspectiveExplanation
DebugPerspective used while debugging the code
JavaPerspective used while writing the code
WebPerspective used in web project

Opening new Eclipse window

We can open the new eclipse window using Window -> New Window option.

Eclipse Opening new window

So we can have two instances of the eclipse and we can have different perspective in each window

C++ Pointer Operator

In this chapter we are going to study C++ Pointer Operators. C++ provides two pointer operators one is value at operator or indirection operator and address operator.

C++ Pointer Operator

C++ Pointer Operator

C++ Address of Operator (&)

  1. The & is a unary operator means it requires only one operand.
  2. The Address of Operator returns the memory address of its operand.
  3. Address of operator has the same precedence and right-to-left associativity as that of other unary operators.
  4. Symbol for the bitwise AND and the address of operator are the same but they don’t have any connection between them

C++ Address Operator

C++ Program : Address of Operator

#include<iostream>
using namespace std;

int main()
{
   int num=10;
	   
   cout << "Value of number   : " << num << endl;
   cout << "Address of number : " << &num << endl;
}

Output :

Value of number : 10
Address of number : 0xffad72dc

Summary

PointExplanation
OperatorAddress of
TypeUnary Operator
Operates onSingle Operand
ReturnsAddress of the operand
Associativityright-to-left
ExplanationAddress of operator gives the computer's internal location of the variable.

C++ Indirection Operator *

  1. The Indirection operator * is a unary operator means it requires only one operand.
  2. Indirection Operator (*) is the complement of Address of Operator (&).
  3. Indirection Operator returns the value of the variable located at the address specified by its operand.

C++ Program : Indirection Operator

#include<iostream>
using namespace std;

int main()
{
   int num=10;
   int *ptr;
   
   ptr=&num;
	   
   cout << " num = " << num << endl;
   cout << " &num = " << &num << endl;
   cout << " ptr = " << ptr << endl;
   cout<< " *ptr = " << *ptr << endl;
}

Output :

num = 10
&num = 0xffcc2bd8
ptr = 0xffcc2bd8
*ptr = 10

Calculations:

// Sample Code for Dereferencing of Pointer

*(ptr) = value at (ptr)
       = value at (0xffcc2bd8) 
       = 10

//Address in ptr is nothing but address of num

Summary

PointExplanation
OperatorIndirection Operator
TypeUnary Operator
Operates onSingle Operand
ReturnsValue at address of the operand)
Associativityright-to-left

Though multiplication symbol and the “Indirection Operator” symbol are the same still they don’t have any relationship between each other.

Both & and * have a higher precedence than all other arithmetic operators except the unary minus/plus, with which they share equal precedence.

C++ Conditional Operator

Conditional Operator [?:] : Ternary Operator in C++

  1. Conditional operators are also called as Ternary Operator.
  2. They are represented by ?:
  3. Ternary Operator takes on 3 Arguments.

Syntax of Ternary Operator:

Expression_1 ? Expression_2 : Expression_3

where

  • Expression_1 is Condition
  • Expression_2 is statement followed if Condition is True
  • Expression_3 is statement followed if Condition is False
  • Explanation of syntax:

    1. Expression_1 is a condition so it will return the result either True or False.
    2. If result of expression_1 is True that is NON-ZERO, then Expression_2 is Executed.
    3. If result of expression_1 is False that is ZERO, then Expression_3 is Executed.

    Program 1#: Conditional Operator Program

    Let us take the simple example of finding greater number from two given numbers using Conditional Operator.

    #include<iostream>
    using namespace std;
    
    int main()
    {
       int num1=10;
       int num2=20;
       
       num1>num2 ? cout << "num1 is greater than num2" : cout<< "num2 is greater than num1" ;
       
       return 0;
    }
    

    Output:

    num2 is greater than num1
    

    C++ sizeof Operator

    C++ sizeof Operator

    • sizeof is a compile-time operator used to calculate the size of data type or variable.
    • sizeof operator will return the size in integer format.
    • sizeof is a keyword.
    • sizeof operator can be nested.

    Syntax of sizeof Operator:

    sizeof(data type)
    

    Data type include variables, constants, classes, structures, unions, or any other user defined data type.

    Examples of sizeof operator:

    Size of Data Types

    #include <iostream>
    using namespace std;
     
    int main()
    {
       cout << "Size of int : " << sizeof(int) << endl;
       cout << "Size of long int : " << sizeof(long int) << endl;
       cout << "Size of float : " << sizeof(float) << endl;
       cout << "Size of double : " << sizeof(double) << endl;
       cout << "Size of char : " << sizeof(char) << endl;
      
       return 0;
    }
    

    Output:

    Size of int : 4
    Size of long int : 4
    Size of float : 4
    Size of double : 8
    Size of char : 1
    

    Size of Variables:

    #include <iostream>
    using namespace std;
     
    int main()
    {
       int i;
       char c;
     
       cout << "Size of variable i : " << sizeof(i) << endl;
       cout << "Size of variable c : " << sizeof(c) << endl;
      
       return 0;
    }
    

    Output:

    Size of variable i : 4
    Size of variable c : 1
    

    Size of Constant:

    #include <iostream>
    using namespace std;
     
    int main()
    {
       cout << "Size of integer constant: " << sizeof(10) << endl;
       cout << "Size of character constant : " << sizeof('a') << endl;
      
       return 0;
    }
    

    Output:

    Size of integer constant: 4
    Size of character constant : 1
    

    Nested sizeof operator:

    #include <iostream>
    using namespace std;
     
    int main()
    {
       int num1,num2;
       cout << sizeof(num1*sizeof(num2));
         return 0;
    }
    

    Output:

    4
    

    C++ Destructor Basics

    In the previous chapter we have learnt about the C++ constructors and basic type of constructors. In this chapter we will be learning about C++ Destructor Basics

    C++ Destructor Basics

    1. Destructors are special member functions of the class required to free the memory of the object whenever it goes out of scope.
    2. Destructors are parameterless functions.
    3. Name of the Destructor should be exactly same as that of name of the class. But preceded by ‘~’ (tilde).
    4. Destructors does not have any return type. Not even void.
    5. The Destructor of class is automatically called when object goes out of scope.

    C++ Destructor programs

    C++ Destructor Program #1 : Simple Example

    #include<iostream> 
    using namespace std;
     
    class Marks
    {
    public:
       int maths;
       int science;
       
       //constructor
       Marks() {
          cout << "Inside Constructor"<<endl;
          cout << "C++ Object created"<<endl;
       }
    	
       //Destructor
       ~Marks() {
          cout << "Inside Destructor"<<endl;
          cout << "C++ Object destructed"<<endl;
       }
    };
    
    int main( )
    {
       Marks m1;
       Marks m2;
       return 0;
    }
    

    Output

    Inside Constructor
    C++ Object created
    Inside Constructor
    C++ Object created
    
    Inside Destructor
    C++ Object destructed
    Inside Destructor
    C++ Object destructed
    

    Explanation :

    You can see destructor gets called just before the return statement of main function. You can see destructor code below –

    ~Marks() {
       cout << "Inside Destructor"<<endl;
       cout << "C++ Object destructed"<<endl;
    }
    

    C++ Destructor always have same name as that of constructor but it just identified by tilde (~) symbol before constructor name.

    Below example will show you how C++ destructor gets called just before C++ object goes out of scope.

    C++ Destructor Program #2 : Out of scope

    #include<iostream> 
    using namespace std;
     
    class Marks
    {
    public:
       int maths;
       int science;
       
       //constructor
       Marks() {
          cout << "Inside Constructor"<<endl;
          cout << "C++ Object created"<<endl;
       }
    	
       //Destructor
       ~Marks() {
          cout << "Inside Destructor"<<endl;
          cout << "C++ Object destructed"<<endl;
       }
    };
    
    int main( )
    {
       {
       Marks m1;
       }
    
       cout<<"Hello World !!" <<endl;
       cout<<"Hello World !!" <<endl;
       cout<<"Hello World !!" <<endl;
       cout<<"Hello World !!" <<endl;
    
       return 0;
    }
    

    Output :

    Inside Constructor
    C++ Object created
    Inside Destructor
    C++ Object destructed
    
    Hello World !!
    Hello World !!
    Hello World !!
    Hello World !!

    Explanation :

    In this example we have defined the scope of the object as we declared object inside the curly braces i.e inside the inner block.

    int main( )
    {
       {
       Marks m1;
       }
    

    So object will be accessible only inside the curly block. Outside the curly block we cannot access the object so destructor gets called when inner curly block ends

    In this example Hello World !! gets printed after the destructor. however for below example Hello World !! gets printed before constructor

    C++ Destructor Program #3 : before destructor

    #include<iostream> 
    using namespace std;
     
    class Marks
    {
    public:
       int maths;
       int science;
       
       //constructor
       Marks() {
          cout << "Inside Constructor"<<endl;
          cout << "C++ Object created"<<endl;
       }
    	
       //Destructor
       ~Marks() {
          cout << "Inside Destructor"<<endl;
          cout << "C++ Object destructed"<<endl;
       }
    };
    
    int main( )
    {
       Marks m1;
       
       cout<<"Hello World !!" <<endl;
       cout<<"Hello World !!" <<endl;
       cout<<"Hello World !!" <<endl;
       cout<<"Hello World !!" <<endl;
    
       return 0;
    }
    

    Output :

    Inside Constructor
    C++ Object created
    
    Hello World !!
    Hello World !!
    Hello World !!
    Hello World !!
    
    Inside Destructor
    C++ Object destructed

    C++ Bitwise Operators

    In this section we are going to study C++ Bitwise operator, its importance and basic operating principle.

    C++ Programming Bitwise Operators:

    • In programming, unlike byte level operations, we may need to do bit level calculations by operating on the individual data bit.
    • C++ gives us various bitwise operators for manipulation of bits.
    • C++ Bitwise Operators operates on Integer and character data types only.
    • C++ Bitwise Operators does not operates on float, double.
    • There are 6 Bitwise Operators in C++.

    List of Bitwise Operators

    Operator Name of Operator
    ~ One's Compliment
    gt;gt; Right Shift
    lt;lt; Left Shift
    amp; Bitwise AND | Bitwise OR ^ Bitwise XOR

    Examples of Bitwise Operators:

    One's Compliment (~) Operator:

    This operator is generally used to turn ON or turn OFF bit.

    #include <iostream>
    using namespace std;
    
    int main()
    {
       // 12 = 0000 1100
       unsigned int num1 = 12
       int num2 = 0;           
    
       num2 = ~num1;  
       cout << "Value of num2 is: " << num2 << endl ;
    
       return 0;
    }
    

    Output:

    Value of num2 is: -13
    

    Right Shift (>>) Operator:

    This operator is used to shift the bits to right by position specified in the expression.

    #include <iostream>
    using namespace std;
    
    int main()
    {
       unsigned int num1 = 12; // 12 = 1100 
       int num2 = 0;           
    
       num2 = num1 >> 2; // 3 = 0011
       cout << "Value of num2 is: " << num2 << endl ;
    
       return 0;
    }
    

    Output:

    Value of num2 is: 3
    

    Left Shift (<<) Operator:

    This operator is used to shift the bits to left by position specified in the expression.

    #include <iostream>
    using namespace std;
    
    int main()
    {
       unsigned int num1 = 12; // 12 = 0000 1100 
       int num2 = 0;           
    
       num2 = num1 << 2; // 48 = 0011 0010
       cout << "Value of num2 is: " << num2 << endl ;
    
       return 0;
    }
    

    Output:

    Value of num2 is: 48
    

    Bitwise AND (&):

    This operator is generally used to mask particular part of byte.

    Output:

    Value of num2 is: 8
    
    #include <iostream>
    using namespace std;
    
    int main()
    {
       unsigned int num1 = 10;	  // 10 = 0000 1010  
       unsigned int num2 = 12;	  // 12 = 0000 1100
       int num3 = 0;           
    
       num3 = num1 & num2;         // 8 = 0000 1000
       cout << "Value of num3 is : " << num3 << endl ;
    
       return 0;
    }
    

    Bitwise OR (|):

    #include <iostream>
    using namespace std;
    
    int main()
    {
       unsigned int num1 = 10;	  // 10 = 0000 1010  
       unsigned int num2 = 12;	  // 12 = 0000 1100
       int num3 = 0;           
    
       num3 = num1 | num2;         // 14 = 0000 1110
       cout << "Value of num3 is : " << num3 << endl ;
    
       return 0;
    }
    

    Output:

    Value of num2 is: 14
    

    Bitwise XOR (^):

    #include <iostream>
    using namespace std;
    
    int main()
    {
       unsigned int num1 = 10;  // 10 = 0000 1010  
       unsigned int num2 = 12;  // 12 = 0000 1100
       int num3 = 0;           
    
       num3 = num1 ^ num2;      // 6 = 0000 0110
       cout << "Value of num3 is : " << num3 << endl ;
    
       return 0;
    }
    

    Output:

    Value of num2 is: 6
    

    C++ Assignment Operator

    C++ assignment Operator basics

    1. Assignment Operator is used to assign value to an variable.
    2. Assignment Operator is denoted by equal to (=) sign.
    3. This operator copies the value at the right side of the operator into the left side variable.
    4. Assignment Operator is binary operator.
    5. Assignment Operator has higher precedence than comma operator only.
    6. Assignment Operator has lower precedence than all other operators except comma operator.

    Ways of Using Assignment Operator:

    In this section we are going to see different ways in which Assignment Operator can be used.

    Assignment Operator used to Assign Value

    In this case the particular value or result of particular expression is assigned to the variable.

    #include<iostream>
    using namespace std;
    
    int main()
    {
       int value;
       value=10;
       return 0;
    }
    

    In this example, 10 is assigned to variable value.

    Assignment Operator used to Type Cast

    #include<iostream>
    using namespace std;
    
    int main()
    {
       int value;
       value=10.5;
       cout<<value;
       return 0;
    }
    

    Higher values can be type cast to lower values using assignment operator. It can also cast lower values to higher values.

    Shorthand assignment operator:

    Operator Symbol Name of OperatorExample Equivalent Construct
    +=Addition assignment a+=5 a=a+5
    -=Subtraction assignment a-=5 a=a-5
    *=Multiplication assignment a*=5 a=a*5
    /=Division assignment a/=5 a=a/5
    %=Remainder assignment a%=5 a=a%5

    Example:

    #include <iostream>
    using namespace std;
    
    int main()
    {
       int num = 10;
       num+=5 ;
       cout << "Result of Expression 1 = " <<num<< endl ;
    
       num = 10;
       num-=5 ;
       cout << "Result of Expression 2 = " <<num<< endl ;
    
       num = 10;
       num*=5 ;
       cout << "Result of Expression 3 = " <<num<< endl ;
       
       num = 10;
       num/=5 ;
       cout << "Result of Expression 4 = " <<num<< endl ;
       
       num = 10;
       num%=5 ;
       cout << "Result of Expression 5 = " <<num<< endl ;
       
       return 0;
    }
    


    Output:

    Result of Expression 1 = 15
    Result of Expression 2 = 5
    Result of Expression 3 = 50
    Result of Expression 4 = 2
    Result of Expression 5 = 0
    

    HTML ASCII Table Reference

    1. ASCII stands for American Standard Code for Information Interchange.
    2. In all there are 128 standard ASCII codes which can be represented by a 7 digit binary number
    3. ASCII range starts from 0000000 to 1111111

    7 Bit ASCII Codes

    DECOCTHEXBINSymbolHTML CodeDescription
    00000000000000NUL&#000;Null char
    10010100000001SOH&#001;Start of Heading
    20020200000010STX&#002;Start of Text
    30030300000011ETX&#003;End of Text
    40040400000100EOT&#004;End of Transmission
    50050500000101ENQ&#005;Enquiry
    60060600000110ACK&#006;Acknowledgment
    70070700000111BEL&#007;Bell
    80100800001000 BS&#008;Back Space
    90110900001001 HT&#009;Horizontal Tab
    100120A00001010 LF&#010;Line Feed
    110130B00001011 VT&#011;Vertical Tab
    120140C00001100 FF&#012;Form Feed
    130150D00001101 CR&#013;Carriage Return
    140160E00001110 SO&#014;Shift Out / X-On
    150170F00001111 SI&#015;Shift In / X-Off
    160201000010000DLE&#016;Data Line Escape
    170211100010001DC1&#017;Device Control 1 (oft. XON)
    180221200010010DC2&#018;Device Control 2
    190231300010011DC3&#019;Device Control 3 (oft. XOFF)
    200241400010100DC4&#020;Device Control 4
    210251500010101NAK&#021;Negative Acknowledgement
    220261600010110SYN&#022;Synchronous Idle
    230271700010111ETB&#023;End of Transmit Block
    240301800011000CAN&#024;Cancel
    250311900011001 EM&#025;End of Medium
    260321A00011010SUB&#026;Substitute
    270331B00011011ESC&#027;Escape
    280341C00011100 FS&#028;File Separator
    290351D00011101 GS&#029;Group Separator
    300361E00011110 RS&#030;Record Separator
    310371F00011111 US&#031;Unit Separator
    320402000100000 &#32;Space
    330412100100001!&#33;Exclamation mark
    340422200100010&#34;Double quotes
    350432300100011#&#35;Number
    360442400100100$&#36;Dollar
    370452500100101%&#37;Procenttecken
    380462600100110&&#38;Ampersand
    390472700100111&#39;Single quote
    400502800101000(&#40;Open parenthesis
    410512900101001)&#41;Close parenthesis
    420522A00101010*&#42;Asterisk
    430532B00101011+&#43;Plus
    440542C00101100,&#44;Comma
    450552D00101101&#45;Hyphen
    460562E00101110.&#46;Period, dot or full stop
    470572F00101111/&#47;Slash or divide
    4806030001100000&#48;Zero
    4906131001100011&#49;One
    5006232001100102&#50;Two
    5106333001100113&#51;Three
    5206434001101004&#52;Four
    5306535001101015&#53;Five
    5406636001101106&#54;Six
    5506737001101117&#55;Seven
    5607038001110008&#56;Eight
    5707139001110019&#57;Nine
    580723A00111010:&#58;Colon
    590733B00111011;&#59;Semicolon
    600743C00111100<&#60;Less than
    610753D00111101=&#61;Equals
    620763E00111110>&#62;Greater than
    630773F00111111?&#63;Question mark
    641004001000000@&#64;At symbol
    651014101000001A&#65;Uppercase A
    661024201000010B&#66;Uppercase B
    671034301000011C&#67;Uppercase C
    681044401000100D&#68;Uppercase D
    691054501000101E&#69;Uppercase E
    701064601000110F&#70;Uppercase F
    711074701000111G&#71;Uppercase G
    721104801001000H&#72;Uppercase H
    731114901001001I&#73;Uppercase I
    741124A01001010J&#74;Uppercase J
    751134B01001011K&#75;Uppercase K
    761144C01001100L&#76;Uppercase L
    771154D01001101M&#77;Uppercase M
    781164E01001110N&#78;Uppercase N
    791174F01001111O&#79;Uppercase O
    801205001010000P&#80;Uppercase P
    811215101010001Q&#81;Uppercase Q
    821225201010010R&#82;Uppercase R
    831235301010011S&#83;Uppercase S
    841245401010100T&#84;Uppercase T
    851255501010101U&#85;Uppercase U
    861265601010110V&#86;Uppercase V
    871275701010111W&#87;Uppercase W
    881305801011000X&#88;Uppercase X
    891315901011001Y&#89;Uppercase Y
    901325A01011010Z&#90;Uppercase Z
    911335B01011011[&#91;Opening bracket
    921345C01011100\&#92;Backslash
    931355D01011101]&#93;Closing bracket
    941365E01011110^&#94;Caret – circumflex
    951375F01011111_&#95;Underscore
    961406001100000`&#96;Grave accent
    971416101100001a&#97;Lowercase a
    981426201100010b&#98;Lowercase b
    991436301100011c&#99;Lowercase c
    1001446401100100d&#100;Lowercase d
    1011456501100101e&#101;Lowercase e
    1021466601100110f&#102;Lowercase f
    1031476701100111g&#103;Lowercase g
    1041506801101000h&#104;Lowercase h
    1051516901101001i&#105;Lowercase i
    1061526A01101010j&#106;Lowercase j
    1071536B01101011k&#107;Lowercase k
    1081546C01101100l&#108;Lowercase l
    1091556D01101101m&#109;Lowercase m
    1101566E01101110n&#110;Lowercase n
    1111576F01101111o&#111;Lowercase o
    1121607001110000p&#112;Lowercase p
    1131617101110001q&#113;Lowercase q
    1141627201110010r&#114;Lowercase r
    1151637301110011s&#115;Lowercase s
    1161647401110100t&#116;Lowercase t
    1171657501110101u&#117;Lowercase u
    1181667601110110v&#118;Lowercase v
    1191677701110111w&#119;Lowercase w
    1201707801111000x&#120;Lowercase x
    1211717901111001y&#121;Lowercase y
    1221727A01111010z&#122;Lowercase z
    1231737B01111011{&#123;Opening brace
    1241747C01111100|&#124;Vertical bar
    1251757D01111101}&#125;Closing brace
    1261767E01111110~&#126;Equivalency sign (tilde)
    1271777F01111111&#127;Delete

    Extended ASCII Codes

    Below is set of additional 128 Extended ASCII Codes according to ISO 8859-1 these are also called as ISO Latin-1.

    DECOCTHEXBINSymbolHTMLCodeDescription
    1282008010000000&#128;Euro sign
    1292018110000001   
    1302028210000010&#130;Single low-9 quotation mark
    1312038310000011ƒ&#131;Latin small letter f with hook
    1322048410000100&#132;Double low-9 quotation mark
    1332058510000101&#133;Horizontal ellipsis
    1342068610000110&#134;Dagger
    1352078710000111&#135;Double dagger
    1362108810001000ˆ&#136;Modifier letter circumflex accent
    1372118910001001&#137;Per mille sign
    1382128A10001010Š&#138;Latin capital letter S with caron
    1392138B10001011&#139;Single left-pointing angle quotation
    1402148C10001100Œ&#140;Latin capital ligature OE
    1412158D10001101   
    1422168E10001110Ž&#142;Latin capital letter Z with caron
    1432178F10001111   
    1442209010010000   
    1452219110010001&#145;Left single quotation mark
    1462229210010010&#146;Right single quotation mark
    1472239310010011&#147;Left double quotation mark
    1482249410010100&#148;Right double quotation mark
    1492259510010101&#149;Bullet
    1502269610010110&#150;En dash
    1512279710010111&#151;Em dash
    1522309810011000˜&#152;Small tilde
    1532319910011001&#153;Trade mark sign
    1542329A10011010š&#154;Latin small letter S with caron
    1552339B10011011&#155;Single right-pointing angle quotation mark
    1562349C10011100œ&#156;Latin small ligature oe
    1572359D10011101   
    1582369E10011110ž&#158;Latin small letter z with caron
    1592379F10011111Ÿ&#159;Latin capital letter Y with diaeresis
    160240A010100000 &#160;Non-breaking space
    161241A110100001¡&#161;Inverted exclamation mark
    162242A210100010¢&#162;Cent sign
    163243A310100011£&#163;Pound sign
    164244A410100100¤&#164;Currency sign
    165245A510100101¥&#165;Yen sign
    166246A610100110¦&#166;Pipe, Broken vertical bar
    167247A710100111§&#167;Section sign
    168250A810101000¨&#168;Spacing diaeresis – umlaut
    169251A910101001©&#169;Copyright sign
    170252AA10101010ª&#170;Feminine ordinal indicator
    171253AB10101011«&#171;Left double angle quotes
    172254AC10101100¬&#172;Not sign
    173255AD10101101­&#173;Soft hyphen
    174256AE10101110®&#174;Registered trade mark sign
    175257AF10101111¯&#175;Spacing macron – overline
    176260B010110000°&#176;Degree sign
    177261B110110001±&#177;Plus-or-minus sign
    178262B210110010²&#178;Superscript two – squared
    179263B310110011³&#179;Superscript three – cubed
    180264B410110100´&#180;Acute accent – spacing acute
    181265B510110101µ&#181;Micro sign
    182266B610110110&#182;Pilcrow sign – paragraph sign
    183267B710110111·&#183;Middle dot – Georgian comma
    184270B810111000¸&#184;Spacing cedilla
    185271B910111001¹&#185;Superscript one
    186272BA10111010º&#186;Masculine ordinal indicator
    187273BB10111011»&#187;Right double angle quotes
    188274BC10111100¼&#188;Fraction one quarter
    189275BD10111101½&#189;Fraction one half
    190276BE10111110¾&#190;Fraction three quarters
    191277BF10111111¿&#191;Inverted question mark
    192300C011000000À&#192;Latin capital letter A with grave
    193301C111000001ÿ&#193;Latin capital letter A with acute
    194302C211000010Â&#194;Latin capital letter A with circumflex
    195303C311000011Ã&#195;Latin capital letter A with tilde
    196304C411000100Ä&#196;Latin capital letter A with diaeresis
    197305C511000101Å&#197;Latin capital letter A with ring above
    198306C611000110Æ&#198;Latin capital letter AE
    199307C711000111Ç&#199;Latin capital letter C with cedilla
    200310C811001000È&#200;Latin capital letter E with grave
    201311C911001001É&#201;Latin capital letter E with acute
    202312CA11001010Ê&#202;Latin capital letter E with circumflex
    203313CB11001011Ë&#203;Latin capital letter E with diaeresis
    204314CC11001100Ì&#204;Latin capital letter I with grave
    205315CD11001101ÿ&#205;Latin capital letter I with acute
    206316CE11001110Î&#206;Latin capital letter I with circumflex
    207317CF11001111ÿ&#207;Latin capital letter I with diaeresis
    208320D011010000ÿ&#208;Latin capital letter ETH
    209321D111010001Ñ&#209;Latin capital letter N with tilde
    210322D211010010Ò&#210;Latin capital letter O with grave
    211323D311010011Ó&#211;Latin capital letter O with acute
    212324D411010100Ô&#212;Latin capital letter O with circumflex
    213325D511010101Õ&#213;Latin capital letter O with tilde
    214326D611010110Ö&#214;Latin capital letter O with diaeresis
    215327D711010111×&#215;Multiplication sign
    216330D811011000Ø&#216;Latin capital letter O with slash
    217331D911011001Ù&#217;Latin capital letter U with grave
    218332DA11011010Ú&#218;Latin capital letter U with acute
    219333DB11011011Û&#219;Latin capital letter U with circumflex
    220334DC11011100Ü&#220;Latin capital letter U with diaeresis
    221335DD11011101ÿ&#221;Latin capital letter Y with acute
    222336DE11011110Þ&#222;Latin capital letter THORN
    223337DF11011111ß&#223;Latin small letter sharp s – ess-zed
    224340E011100000à&#224;Latin small letter a with grave
    225341E111100001á&#225;Latin small letter a with acute
    226342E211100010â&#226;Latin small letter a with circumflex
    227343E311100011ã&#227;Latin small letter a with tilde
    228344E411100100ä&#228;Latin small letter a with diaeresis
    229345E511100101å&#229;Latin small letter a with ring above
    230346E611100110æ&#230;Latin small letter ae
    231347E711100111ç&#231;Latin small letter c with cedilla
    232350E811101000è&#232;Latin small letter e with grave
    233351E911101001é&#233;Latin small letter e with acute
    234352EA11101010ê&#234;Latin small letter e with circumflex
    235353EB11101011ë&#235;Latin small letter e with diaeresis
    236354EC11101100ì&#236;Latin small letter i with grave
    237355ED11101101í&#237;Latin small letter i with acute
    238356EE11101110î&#238;Latin small letter i with circumflex
    239357EF11101111ï&#239;Latin small letter i with diaeresis
    240360F011110000ð&#240;Latin small letter eth
    241361F111110001ñ&#241;Latin small letter n with tilde
    242362F211110010ò&#242;Latin small letter o with grave
    243363F311110011ó&#243;Latin small letter o with acute
    244364F411110100ô&#244;Latin small letter o with circumflex
    245365F511110101õ&#245;Latin small letter o with tilde
    246366F611110110ö&#246;Latin small letter o with diaeresis
    247367F711110111÷&#247;Division sign
    248370F811111000ø&#248;Latin small letter o with slash
    249371F911111001ù&#249;Latin small letter u with grave
    250372FA11111010ú&#250;Latin small letter u with acute
    251373FB11111011û&#251;Latin small letter u with circumflex
    252374FC11111100ü&#252;Latin small letter u with diaeresis
    253375FD11111101ý&#253;Latin small letter y with acute
    254376FE11111110þ&#254;Latin small letter thorn
    255377FF11111111ÿ&#255;Latin small letter y with diaeresis