As the ISO/IEC 23271 and ECMA 335 (Third edition) standard, I do not know how many people understand the CLI type and library. In fact, not everyone likes to understand this. Anyway, the. NET framework implemented by Microsoft is already very standard!
Today, I took the time to sort out a small program. The preliminary analysis results are as follows:
Type Library
Type quantity
Embedded type
Bcl
172
5
seriously is a very popular thing. For people of Science and engineering, it is possible to miss an important formula or theorem or a blackboard when you are careful, and it is possible that a project or an important subject will not be understood. So why do you have to listen carefully in college and why you must listen to lectures.Two. Interested in the computer, to the University of this major, at present, the knowledge of this major is very narrow, C language learning may be very difficult,
computer practice to verify the theory, by looking for errors on the machine to consolidate the concept, by improving the ability to promote theoretical learning, open programming ideas, improve the speed of reflection, improve the ability to solve problems, exercise psychological quality, improve the psychological capacity to bear. Listen actively in class, improve the efficiency of class2. Can't keep up with the teacherReview after class. The daily content of the class to go home to review ag
1. Scope
1. This International Standard specifies the form of the C programming language and establishes an interpretation of programming in the C programming language. [Note: international standards are designed to improve the portability of C Programs in multiple data processing systems. Its purpose is to be used by implementers and programmers.] It specifies:
-- C language representation;
-- C language syntax and mandatory provisions;
-- Used to explain the Semantic Rules of C programs;
6.7.1 Storage Class DescriptorGrammar1,storage-class-specifier:typedefexternStatic_thread_localAutoRegisterConstraints2. In a declaration, you can only give a storage-class specifier in a declaration specifier, except that _thread_local can appear with static or extern . [Note: See "Future Language Direction" (6.11.5)]3. In the declaration of an object containing a block scope, if the declaration specifier contains _thread_local, then they should also contain static or extern. If _thread_local a
result cannot be a negative number, The operands of this comparison may never be compared to equal. Thus, for full portability, the variable C should be declared as int.5, Example 2 in the following program fragment:Char C; int i; Long = (c =i);The value of I is converted to the type of the assignment expression c = i , which is the char type. The value of the expression enclosed in parentheses is then converted to the type of the outer assignment expression, that is, the long int type.6, exam
;The following are allowed:1= i;]3. The combination of the operator and the operand is specified by the syntax. [Note: The syntax specifies the precedence of an operator in an expression calculation, which is the same as the order of the main sub-clauses of the clause, and the highest priority is first introduced. Thus, for example, an expression that is allowed as a binocular operator + (6.5.6) is the expression defined in 6.5.1 to 6.5.6. The exception is a cast expression (6.5.4) as the operan
6.4.6 PunctuationGrammar1. One of the following[ ] ( ) { } . + + +-- * +-~!/% = *=/=%= + = = Semantic2, a punctuation mark is a symbol, with independent grammatical and semantic meaning. Depending on the context, it can specify an action to be performed (which in turn produces a value or a function specifier, which produces a side effect, or a combination of these), in which case it is recognized as an operator (Other forms of the operator also exist in some contexts). An operand is an entit
6.5.5 multiplication operatorGrammar1,multiplicative-expression:cast-expressionmultiplicative-expression * cast-expressionmultiplicative-expression / cast-expressionmultiplicative-expression % cast-expressionConstraints2. Each operand should have an arithmetic type. The operand of the % operator should have an integer type.Semantic3. The usual arithmetic conversions are performed on the operands.4. The result of the binocular * operator is the result of the product of the operand.The result of
6.9 external DefinitionsGrammar1,translation-unit:external-declarationTranslation-unit external-declarationexternal-declaration:function-definitionDeclarationConstraints2. Storage class specifier auto and register should not appear in the declaration descriptor of an external declaration.3. In a translation unit, each identifier should not have more than one external definition. In addition, if an identifier declared with an inner join is used in an expression (rather than as part of the operand
5.2.1 Character Set1, two character sets and the order in which they are associated should be defined: the collection written in the source file (the source character set ), and the set that is interpreted in the execution environment (the execution character set ). Each collection is also divided into a basic character set , the contents of which are given by the book clause, and a set of 0 or more zone-specific members (these are not members of the basic character set), called extended charact
active position to the initial position at the beginning of the next logical page.\ n( newline ) moves the active position to the initial position of the next line.\ r( enter ) moves the active position to the initial position of the current row.\ t( horizontal tab ) moves the active position to the next horizontal tab position on the current line. If the active location is or crosses the last position defined by the Horizontal tab position, then the behavior of the display device is unspecifie
Lab; Lab.label=label; Lab.lab.label=Ten; Union Label LAB2={Label}; enumLABEL LAB3 =LABEL3; if(LAB3 = =LABEL) puts ("ok!"); printf ("The answer is:%d\n", Lab.label + Lab2.label +lab3); Label:puts ("complete!");}]In the above code, under the Apple LLVM 6.1 compiler, the label names of externally defined structs, unions, and enumerations cannot be the same. In the Functest function statement block, the object identifier is identical to the tag name of the struct, union, and enumeration. In additio
6.8.4 SELECT statementGrammar1,selection-statement:if ( expression ) Statementif ( expression ) Statement Else StatementSwitch ( expression ) statementSemantic2. A selection statement is selected in a set of statements and relies on a value that controls the expression.3. A SELECT statement is a block of statements whose scope is a strict subset of its enclosing statement blocks. Each associated child statement is also a block of statements whose scope is a strict subset of the scope of the sel
6.8.1 Label StatementsGrammar1,labeled-statement:identifier : Statementdefault : Statement case constant-expression : statementConstraints2. A case or default tag should appear only in one switch statement. Further constraints on these tags are discussed in the following switch statements.3. The label name should be unique within a function.Semantic4, any statement can be preceded by a prefix, used to declare an identifier as a label name. The label itself does not alter the control flow, whi
6.9.2 External Object definitionsSemantic1. If the declaration of an object's identifier has a file scope and an initializer, then the declaration is an external definition of the identifier.2. A declaration that has a file scope and does not have an initializer, does not have a storage-class specifier, or has an identifier for the object that stores the class descriptor static , constitutes an experimental definition . If a translation unit contains one or more experimental definitions for an i
Appendix c--Order Points1. The following are the order points described in 5.1.2.3 (sequence point):--The Order point (6.5.2.2) between the function indicator (functions designator) and the actual argument in a function call, and the actual call.--The order point between the first and second computations of the following operators: Logic and (6.5.13); logical OR | | (6.5.14); comma ,(6.5.17).--In the conditional operator?: The first operand of the calculation and the second is computed with the
6.10.1 conditions includeConstraints1, the control condition contains the expression should be an integer constant expression, in addition to: identifiers (including those that are lexical and the same as the keyword) are resolved to the following description; [Note: Because the control constant expression is computed during phase 4 of the translation period, all identifiers are either macro names or macro names-- They are not keywords, enumeration constants, and so on. ] and it can contain a si
6.10.3 macro SubstitutionConstraints1, two alternate lists are the same, and all whitespace separators here are considered identical if and only if the preprocessing characters in the two substitution list have the same number, order, spelling, and whitespace delimiter.2. The identifier of a macro that is currently defined as a similar object should not be redefined by another #define preprocessing indicator, unless the second definition is a macro definition of a similar object, and the two rep
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.