Hyderabad:8008855666, Vizag:9966955666, Rajahmundry:9059061333, Kakinada:9618855666

Demo2 first
IEEE Projects on:Java & .NET
Demo2 second
Mobile Application Projects on:J2ME & ANDROID
Demo2 third
IEEE Projects on:Java & .NET
Demo2 fourth
Mobile Application Projects on:J2ME & ANDROID

c++

1.What is C++?

ANSWER
Released in 1985, C++ is an object-oriented programming language created by Bjarne Stroustrup. C++ maintains almost all aspects of the C language, while simplifying memory management and adding several features - including a new datatype known as a class (you will learn more about these later) - to allow object-oriented programming. C++ maintains the features of C which allowed for low-level memory access but also gives the programmer new tools to simplify memory management.
C++ used for:
C++ is a powerful general-purpose programming language. It can be used to create small programs or large applications. It can be used to make CGI scripts or console-only DOS programs. C++ allows you to create programs to do almost anything you need to do. The creator of C++, Bjarne Stroustrup, has put together a partial list of applications written in C++.

2.What is inheritance?

ANSWER
Inheritance allows one class to reuse the state and behavior of another class. The derived class inherits the properties and method implementations of the base class and extends it by overriding methods and adding additional properties and methods.

3.What is constructor or ctor?

ANSWER
Constructor creates an object and initializes it. It also creates vtable for virtual functions. It is different from other methods in a class.

4.What is destructor?

ANSWER
Destructor usually deletes any extra resources allocated by the object.

5.What is default constructor?

ANSWER
Constructor with no arguments or all the arguments has default values.

6.When are copy constructors called?

ANSWER
Copy constructors are called in following cases: a) when a function returns an object of that class by value b) when the object of that class is passed by value as an argument to a function c) when you construct an object based on another object of the same class d) When compiler generates a temporary object

7.What is assignment operator?

ANSWER
Default assignment operator handles assigning one object to another of the same class. Member to member copy (shallow copy)

9.What is difference between template and macro?

ANSWER
There is no way for the compiler to verify that the macro parameters are of compatible types. The macro is expanded without any special type checking.If macro parameter has a postincremented variable ( like c++ ), the increment is performed two times. Because macros are expanded by the preprocessor, compiler error messages will refer to the expanded macro, rather than the macro definition itself. Also, the macro will show up in expanded form during debugging.

10.What are C++ storage classes?

ANSWER
auto: the default. Variables are automatically created and initialized when they are defined and are destroyed at the end of the block containing their definition. They are not visible outside that block register: a type of auto variable. a suggestion to the compiler to use a CPU register for performance static: a variable that is known only in the function that contains its definition but is never destroyed and retains its value between calls to that function. It exists from the time the program begins execution extern: a static variable whose definition and placement is determined when all object and library modules are combined (linked) to form the executable code file. It can be visible outside the file where it is defined.

11.What are storage qualifiers in C++ ?

ANSWER
Const keyword indicates that memory once initialized, should not be altered by a program. Volatile keyword indicates that the value in the memory location can be altered even though nothing in the program code modifies the contents. for example if you have a pointer to hardware location that contains the time, where hardware changes the value of this pointer variable and not the program. The intent of this keyword to improve the optimization ability of the compiler. Mutable keyword indicates that particular member of a structure or class can be altered even if a particular structure variable, class, or class member function is constant.

12.What is reference ?

ANSWER
Reference is a name that acts as an alias, or alternative name, for a previously defined variable or an object. prepending variable with "&" symbol makes it as reference

13.When do use "const" reference arguments in function?

ANSWER
a) Using const protects you against programming errors that inadvertently alter data. b) Using const allows function to process both const and non-const actual arguments, while a function without const in the prototype can only accept non constant arguments. c) Using a const reference allows the function to generate and use a temporary variable appropriately.

14.What is virtual function?

ANSWER
When derived class overrides the base class method by redefining the same function, then if client wants to access redefined the method from derived class through a pointer from base class object, then you must define this function in base class as virtual function.

16.What is Memory alignment?

ANSWER
The term alignment primarily means the tendency of an address pointer value to be a multiple of some power of two. So a pointer with two byte alignment has a zero in the least significant bit. And a pointer with four byte alignment has a zero in both the two least significant bits. And so on. More alignment means a longer sequence of zero bits in the lowest bits of a pointer.

17.What is the use of "using" declaration?

ANSWER
A using declaration makes it possible to use a name from a namespace without the scope operator.

18.What is an Iterator class?

ANSWER
A class that is used to traverse through the objects maintained by a container class. There are five categories of iterators: input iterators, output iterators, forward iterators, bidirectional iterators, random access. An iterator is an entity that gives access to the contents of a container object without violating encapsulation constraints. Access to the contents is granted on a one-at-a-time basis in order. The order can be storage order (as in lists and queues) or some arbitrary order (as in array indices) or according to some ordering relation (as in an ordered binary tree). The iterator is a construct, which provides an interface that, when called, yields either the next element in the container, or some value denoting the fact that there are no more elements to examine. Iterators hide the details of access to and update of the elements of a container class. Something like a pointer.

19.What is a dangling pointer?

ANSWER
A dangling pointer arises when you use the address of an object after its lifetime is over. This may occur in situations like returning addresses of the automatic variables from a function or using the address of the memory block after it is freed.

20. What is a container class? What are the types of container classes?

ANSWER
A container class is a class that is used to hold objects in memory or external storage. A container class acts as a generic holder. A container class has a predefined behavior and a well-known interface. A container class is a supporting class whose purpose is to hide the topology used for maintaining the list of objects in memory. When a container class contains a group of mixed objects, the container is called a heterogeneous container; when the container is holding a group of objects that are all the same, the container is called a homogeneous container.

21.What is inline function?

ANSWER
The __inline keyword tells the compiler to substitute the code within the function definition for every instance of a function call. However, substitution occurs only at the compilers discretion. For example, the compiler does not inline a function if its address is taken or if it is too large to inline.

22.What is overloading?

ANSWER
With the C++ language, you can overload functions and operators. Overloading is the practice of supplying more than one definition for a given function name in the same scope. - Any two functions in a set of overloaded functions must have different argument lists. - Overloading functions with argument lists of the same types, based on return type alone, is an error.

23.What is Overriding?

ANSWER
To override a method, a subclass of the class that originally declared the method must declare a method with the same name, return type (or a subclass of that return type), and same parameter list.The definition of the method overriding is: • Must have same method name. • Must have same data type. • Must have same argument list. Overriding a method means that replacing a method functionality in child class. To imply overriding functionality we need parent and child classes. In the child class you define the same method signature as one defined in the parent class.

24.What is "this" pointer?

ANSWER
The this pointer is a pointer accessible only within the member functions of a class, struct, or union type. It points to the object for which the member function is called. Static member functions do not have a this pointer. When a nonstatic member function is called for an object, the address of the object is passed as a hidden argument to the function

25.What is name mangling in C++?

ANSWER
The process of encoding the parameter types with the function/method name into a unique name is called name mangling. The inverse process is called demangling. For example Foo::bar(int, long) const is mangled as bar__C3Fooil. For a constructor, the method name is left out. That is Foo::Foo(int, long) const is mangled as __C3Fooil.

26.What is the difference between a pointer and a reference?

ANSWER
A reference must always refer to some object and, therefore, must always be initialized; pointers do not have such restrictions. A pointer can be reassigned to point to different objects while a reference always refers to an object with which it was initialized

27.How are prefix and postfix versions of operator++() differentiated?

ANSWER
The postfix version of operator++() has a dummy parameter of type int. The prefix version does not have dummy parameter

28.What is the difference between const char *myPointer and char *const myPointer?

ANSWER
Const char *myPointer is a non constant pointer to constant data; while char *const myPointer is a constant pointer to non constant data.

29.What is Virtual Destructor?

ANSWER
Using virtual destructors, you can destroy objects without knowing their type - the correct destructor for the object is invoked using the virtual function mechanism. Note that destructors can also be declared as pure virtual functions for abstract classes. if someone will derive from your class, and if someone will say "new Derived", where "Derived" is derived from your class, and if someone will say delete p, where the actual object type is "Derived" but the pointer p s type is your class. Can you think of a situation where your program would crash without reaching the breakpoint.

30.Which you set at the beginning of main()?

ANSWER
C++ allows for dynamic initialization of global variables before main() is invoked. It is possible that initialization of global will invoke some function. If this function crashes the crash will occur before main() is entered. Name two cases where you MUST use initialization list as opposed to assignment in constructors. Both non-static const data members and reference data members cannot be assigned values; instead, you should use initialization list to initialize them.

31.Can you overload a function based only on whether a parameter is a value or a reference?

ANSWER
No. Passing by value and by reference looks identical to the caller.

32.What are the differences between a C++ struct and C++ class?

ANSWER
The default member and base class access specifiers are different. The C++ struct has all the features of the class. The only differences are that a struct defaults to public member access and public base class inheritance, and a class defaults to the private access specifier and private base class inheritance.

32.What does extern "C" int func(int *, Foo) accomplish?

ANSWER
It will turn off "name mangling" for func so that one can link to code compiled by a C compiler

33.How do you access the static member of a class?

ANSWER
::

34.What is multiple inheritance(virtual inheritance)? What are its advantages and disadvantages?

ANSWER
Multiple Inheritance is the process whereby a child can be derived from more than one parent class. The advantage of multiple inheritance is that it allows a class to inherit the functionality of more than one base class thus allowing for modeling of complex relationships. The disadvantage of multiple inheritance is that it can lead to a lot of confusion(ambiguity) when two base classes implement a method with the same name.

35.What are the access privileges in C++? What is the default access level?

ANSWER
The access privileges in C++ are private, public and protected. The default access level assigned to members of a class is private. Private members of a class are accessible only within the class and by friends of the class. Protected members are accessible by the class itself and it”s sub-classes. Public members of a class can be accessed by anyone

36.What is a nested class? Why can it be useful?

ANSWER
A nested class is a class enclosed within the scope of another class.

37.What is a container class? What are the types of container classes?

ANSWER
A container class is a class that is used to hold objects in memory or external storage. A container class acts as a generic holder. A container class has a predefined behavior and a well-known interface. A container class is a supporting class whose purpose is to hide the topology used for maintaining the list of objects in memory. When a container class contains a group of mixed objects, the container is called a heterogeneous container; when the container is holding a group of objects that are all the same, the container is called a homogeneous container.

38.What is a protocol class?

ANSWER
An abstract class is a protocol class if:it neither contains nor inherits from classes that contain member data, non-virtual functions, or private (or protected) members of any kind.it has a non-inline virtual destructor defined with an empty implementation, all member functions other than the destructor including inherited functions, are declared pure virtual functions and left undefined.

39.What is a mixin class?

ANSWER
A class that provides some but not all of the implementation for a virtual base class is often called mixin. Derivation done just for the purpose of redefining the virtual functions in the base classes is often called mixin inheritance. Mixin classes typically don"t share common bases.

40.What is a concrete class?

ANSWER
A concrete class is used to define a useful object that can be instantiated as an automatic variable on the program stack. The implementation of a concrete class is defined. The concrete class is not intended to be a base class and no attempt to minimize dependency on other classes in the implementation or behavior of the class.

41.What is the handle class?

ANSWER
A handle is a class that maintains a pointer to an object that is programmatically accessible through the public interface of the handle class.

42.What is an action class?

ANSWER
The simplest and most obvious way to specify an action in C++ is to write a function. However, if the action has to be delayed, has to be transmitted “elsewhere” before being performed, requires its own data, has to be combined with other actions, etc then it often becomes attractive to provide the action in the form of a class that can execute the desired action and provide other services as well. Manipulators used with iostreams is an obvious example.

43.When can you tell that a memory leak will occur?

ANSWER
A memory leak occurs when a program loses the ability to free a block of dynamically allocated memory.

44.What is a parameterized type?

ANSWER
A template is a parameterized construct or type containing generic code that can use or manipulate any type. It is called parameterized because an actual type is a parameter of the code body. Polymorphism may be achieved through parameterized types. This type of polymorphism is called parameteric polymorphism. Parameteric polymorphism is the mechanism by which the same code is used on different types passed as parameters

45.What is an opaque pointer?

ANSWER
A pointer is said to be opaque if the definition of the type to which it points to is not included in the current translation unit. A translation unit is the result of merging an implementation file with all its headers and header files.

46.What is a smart pointer?

ANSWER
A smart pointer is an object that acts, looks and feels like a normal pointer but offers more functionality. In C++, smart pointers are implemented as template classes that encapsulate a pointer and override standard pointer operators. They have a number of advantages over regular pointers. They are guaranteed to be initialized as either null pointers or pointers to a heap object. Indirection through a null pointer is checked. No delete is ever necessary. Objects are automatically freed when the last pointer to them has gone away. One significant problem with these smart pointers is that unlike regular pointers, they do not respect inheritance. Smart pointers are unattractive for polymorphic code. Given below is an example for the implementation of smart pointers.

47.What is reflexive association?

ANSWER
The is-a is called a reflexive association because the reflexive association permits classes to bear the is-a association not only with their super-classes but also with themselves. It differs from a specializes-from as specializes-from is usually used to describe the association between a super-class and a sub-class. For example: Printer is-a printer.

48.What is slicing?

ANSWER
Slicing means that the data added by a subclass are discarded when an object of the subclass is passed or returned by value or from a function expecting a base class object.

49.What is name mangling?

ANSWER
Name mangling is the process through which your c++ compilers give each function in your program a unique name. In C++, all programs have at-least a few functions with the same name. Name mangling is a concession to the fact that linker always insists on all function names being unique.

50.What are proxy objects?

ANSWER
Objects that points to other objects are called proxy objects or surrogates. Its an object that provides the same interface as its server object but does not have any functionality. During a method invocation, it routes data to the true server object and sends back the return value to the object.

51.What is cloning?

ANSWER
An object can carry out copying in two ways i.e. it can set itself to be a copy of another object, or it can return a copy of itself. The latter process is called cloning.

52.Describe the main characteristics of static functions?

ANSWER
The main characteristics of static functions include, It is without the a this pointer, It cannot directly access the non-static members of its class It cannot be declared const, volatile or virtual. It does not need to be invoked through an object of its class, although for convenience, it may.

53.Will the inline function be compiled as the inline function always? Justify.

ANSWER
An inline function is a request and not a command. Hence it will not be compiled as an inline function always. Inline-expansion could fail if the inline function contains loops, the address of an inline function is used, or an inline function is called in a complex expression. The rules for inlining are compiler dependent.

54.How can a “::” operator be used as unary operator?

ANSWER
The scope operator can be used to refer to members of the global namespace. Because the global namespace doesn’t have a name, the notation :: member-name refers to a member of the global namespace. This can be useful for referring to members of global namespace whose names have been hidden by names declared in nested local scope. Unless we specify to the compiler in which namespace to search for a declaration, the compiler simple searches the current scope, and any scopes in which the current scope is nested, to find the declaration for the name.

55.What is the use of “using” declaration?

ANSWER
A using declaration makes it possible to use a name from a namespace

56.Differentiate between a template class and class template?

ANSWER
Template class: A generic definition or a parameterized class not instantiated until the client provides the needed information. It is jargon for plain templates. Class template: A class template specifies how individual classes can be constructed much like the way a class specifies how individual objects can be constructed. It’s jargon for plain classes.

57.Which keyword supports dynamic method resolution?

ANSWER
The virtual keyword indicates that the virtual method will be resolved at runtime (i.e., the method resolution is dynamic).

58.What does STL stands for?

ANSWER
Standard Template Library.

59.What is the implicit pointer that is passed as the first argument for nonstatic member functions?

ANSWER
“this” pointer

60.How do we declare an abstract class?

ANSWER
By providing at least one pure virtual method (function signature followed by = 0;). Note that ‘abstract’ is not a keyword in C++.

61.How do we declare an “interface” class?

ANSWER
By making all the methods pure virtual in a class. C++ does not support interface classes (as in java) directly as a language feature. However, we can create interface classes by making all the methods in the class pure virtual.

62.Is Macros can be declared as template?

ANSWER
NO, Macros are implanted in a preprocessor and cannot be implemented as a template. Functions and classes can be declared as templates.

63.Which relationship is known as Inheritance relationship?

ANSWER
“is-a” relationship. The relationship is-a describes is a kind of relationship between two types as in “a car is four-wheeler vehicle”. This relationship is expressed as inheritance in OOP. The relationship has-a describes one type contains object of another type. As in “a car has an engine”.

64.When should we use multiple inheritance?When should we use multiple inheritance?

ANSWER
There are three acceptable answers: - "Never,""Rarely," and "When the problem domain cannot be accurately modeled any other way." Consider an Asset class, Building class, Vehicle class, and Company Car class. All company cars are vehicles. Some company cars are assets because the organizations own them. Others might be leased. Not all assets are vehicles. Money accounts are assets. Real estate holdings are assets. Some real estate holdings are buildings. Not all buildings are assets. When you diagram these relationships, it becomes apparent that multiple inheritance is a likely and intuitive way to model this common problem domain. The applicant should understand, however, that multiple inheritance, like a chainsaw, is a useful tool that has its perils, needs respect, and is best avoided except when nothing else will do.

65.What is multiple inheritance? What are its advantages and disadvantages?

ANSWER
Multiple Inheritance is the process whereby a child can be derived from more than one parent class. The advantage of multiple inheritance is that it allows a class to inherit the functionality of more than one base class thus allowing for modeling of complex relationships. The disadvantage of multiple inheritance is that it can lead to a lot of confusion (ambiguity) when two base classes implement a method with the same name.

66.What is Generic Programming? Does C++ support Generic programming?

ANSWER
Generic programming is a way of developing software that maximizes code reuse in a way that does not sacrifice performance. C++ supports generic programming.

67.What is a class?

ANSWER
A class defines a data type, much like a struct would be in C. In a computer science sense, a type consists of both a set of states and a set of operations which transition between those states. Thus int is a type because it has both a set of states and it has operations like i + j or i++, etc. In exactly the same way, a class provides a set of (usually public) operations, and a set of (usually non-public) data bits representing the abstract values that instances of the type can have.

68.What is an Object?

ANSWER
A region of storage with associated semantics. After the declaration int i; we say that "i is an object of type int." In OO/C++, "object" usually means "an instance of a class." Thus a class defines the behavior of possibly many objects (instances).

69.What is Encapsulation?

ANSWER
Preventing unauthorized access to some piece of information or functionality. The key money-saving insight is to separate the volatile part of some chunk of software from the stable part. Encapsulation puts a firewall around the chunk, which prevents other chunks from accessing the volatile parts; other chunks can only access the stable parts. This prevents the other chunks from breaking if (when!) the volatile parts are changed. In context of OO software, a "chunk" is normally a class or a tight group of classes.

70.How can I prevent other programmers from violating encapsulation by seeing the private parts of my class?

ANSWER
Not worth the effort — encapsulation is for code, not people. It does not violate encapsulation for a programmer to see the private and/or protected parts of your class, so long as they do not write code that somehow depends on what they saw. In other words, encapsulation does not prevent people from knowing about the inside of a class; it prevents the code they write from becoming dependent on the insides of the class. Your company does not have to pay a "maintenance cost" to maintain the gray matter between your ears; but it does have to pay a maintenance cost to maintain the code that comes out of your finger tips. What you know as a person does not increase maintenance cost, provided the code you write depends on the interface rather than the implementation. Besides, this is rarely if ever a problem. I do not know any programmers who have intentionally tried to access the private parts of a class. "My recommendation in such cases would be to change the programmer, not the code"

71.Can a method directly access the non-public members of another instance of its class?

ANSWER
Yes. The name this is not special. Access is granted or denied based on the class of the reference/pointer/object, not based on the name of the reference/pointer/object.

72.Is Encapsulation a Security device?

ANSWER
No. Encapsulation != security. Encapsulation prevents mistakes, not espionage.

73.What is a reference?

ANSWER
An alias (an alternate name) for an object.

74.What is Polymorphism?

ANSWER
Object-oriented programming languages support polymorphism, which is characterized by the phrase "one interface, multiple methods." In simple terms, polymorphism is the attribute that allows one interface to control access to a general class of actions.

75.What is Inheritance?

ANSWER
Inheritance is the process by which one object can acquire the properties of another object. This is important because it supports the concept of classification.

76.What is Boolean data type?

ANSWER
C++ defines a built-in Boolean type called bool. At the time of this writing, Standard C does not. Objects of type bool can store only the values true or false, which are keywords defined by C++.

77.What is header?

ANSWER
To use a library function in a program, a header file must be included.

78.What are newly introduced header files in C++?

ANSWER
Standard C++ created a new kind of header that is used by the Standard C++ library. The new-style headers do not specify filenames. Instead, they simply specify standard identifiers that may be mapped to files by the compiler. The new-style C++ headers are an abstraction that simply guarantee that the appropriate prototypes and definitions required by the C++ library have been declared. the C++ new-style header for math.h is .

79.What are namespaces?

ANSWER
A namespace is simply a declarative region. The purpose of a namespace is to localize the names of identifiers to avoid name collisions. Ex: The statement using namespace std;

80.How function-overloading works in C++?

ANSWER
One way that C++ achieves polymorphism is through the use of function overloading. In C++, two or more functions can share the same name as long as their parameter declarations are different. In this situation, the functions that share the same name are said to be overloaded, and the process is referred to as function overloading.

81.What is Virtual Member function?

ANSWER
With virtual functions, derived classes can provide new implementations of functions from their base classes. When someone calls a virtual function of an object of the derived class, this new implementation is called, even if the caller uses a pointer to the base class, and does not even know about the particular derived class.The derived class can completely "override" the implementation or "augment" it (by explicitly calling the base class implementation in addition to the new things it does). Static typing means that when a function (virtual or other) is called, the compiler checks that the function call is valid according to the statically defined interfaces. Dynamic binding means that the code generated from the statically checked function calls may actually call many different implementations, and figures out the one to call at run time.

82.How Virtual and Non-Virtual member functions are called?

ANSWER
Non-virtual functions are resolved at compile time. virtual functions are resolved at run time.

83.How can a member function in derived class call the same function in base class?

ANSWER
In a class Derived, in a function Derived::f(), you can type Base::f(); to call the f implementation from your base class Base. The compiler will ignore the actual type of your object (at the low level - vtable and all that), and call Base::fjust the way non-virtual functions are normally called.

84.What is a constructor?

ANSWER
A constructor function is a special function that is a member of a class and has the same name as that class

85.How exception handling can improve software quality?

ANSWER
You will have less if statements in your code: you will not have to check for errors each time you call a function. Conditional statements are known to contain more bugs than other statements. With less if tests, you will ship a better product, faster.

86.How to handle a program with too many try blocks?

ANSWER
It is unnecessary to write program with too many try blocks. Try to avoid them by simply going through general exceptions

87.What is the use of FRIEND FUNCTION?

ANSWER
A friend function for a class is used in object-oriented programming to allow access to public, private, or protected data in the class from the outside.

88.What is the of “friend class”?

ANSWER
Inside a class, you can indicate that other classes (or simply functions) will have direct access to protected and private members of the class. When granting access to a class, you must specify that the access is granted for a class using the class keyword: Sysntax: friend class ;

89.What is the use of “template key” word?

ANSWER
Use the keyword “template” as a qualifier to distinguish member templates from other names

90.What are the jumping statements in cpp?

ANSWER
Break, continue, return, goto

91.what are the selection statements in cpp?

ANSWER
if statement, switch statement

92.what is preprocessor directives?

ANSWER
The preprocessor is a program that is invoked by the compiler to process code before compilation. Commands for that program, known as directives, are lines of the source file beginning with the character #, which distinguishes them from lines of source program text. The effect of each preprocessor directive is a change to the text of the source code, and the result is a new source code file, which does not contain the directives. The preprocessed source code, an intermediate file, must be a valid C or C++ program, because it becomes the input to the compiler.

93.What is Token?

ANSWER
A token is the smallest independent unit of meaning in a program, as defined by the compiler.

94.How many types of Tokens in cpp?

ANSWER
Keywords, Identifiers, Literals, Punctuators and operators

95.what is a keyword?

ANSWER
Keywords are identifiers reserved by the language for special use. Although you can use them for preprocessor macro names, it is considered poor programming style. Only the exact spelling of keywords is reserved. For example, auto is reserved but AUTO is not.

96.How many types of user defined data types?

ANSWER
Structures and unions, Enumerations, typedef definitions, Classes, Elaborated type specifiers.

97.what is the use of Type qualifiers?

ANSWER
A type qualifier is used to refine the declaration of a variable, a function, and parameters, by specifying whether.

98.what is the use of declarators?

ANSWER
A declarator designates a data object or function. A declarator can also include an initialization. Declarators appear in most data definitions and declarations and in some type definitions.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>