#运算符: Used to convert macro parameters to strings during the precompilation period#define Convers (x) #x//NOTE: Double quotation marks are not included.Different types of pointers occupy the same amount of memory space.Local variable definition:A[5];When printing a[i], a[i] is a random number.If you define a[5]={1,2};when printing, a[0]=1;a[1]=2;a[2]=a[3]=a[4]=0;Array address and array name:1. The array name represents the address of the first element of the array. a=a[0];2. The address of the a
Reprint: http://c.biancheng.net/cpp/html/3246.htmlNote: The difference between array pointersif all the elements in an array hold pointers, then we call it an array of pointers . The array of pointers is typically defined as:DataType *arrayname[length];[ ]Priority is higher than the * defined form should be interpreted as:DataType * (Arrayname[length]);The parentheses inside the description arrayName are an array that contains the length elements, outside the brackets that indicate the type of e
C pointer example, C pointer example
In computer science, Pointer is an object in programming languages. With an address, its value directly points to the value in another place in computer memory. Because the address can find the required variable unit, it can be said that the address points to the variable unit. Therefore, what visualizes an address is called a
C language-06 complex data types-03 pointer,-06 data type-03 pointerPointer variable definition
Variable type * variable name;
# Include Int a = 90; p = a; // the pointer Variable p points to the variable a. the pointer variable can only store addresses.
* P = 10; // * different from * when defining pointer variables,
Document directory
More optimized methods
Int * P [3] and INT (* P) [3]
* P [3] is a pointer array, which means that every element in the array is a pointer variable, and (* P) [3], P is a pointer variable that points to a one-dimensional array containing three integer elements.View code
Int I, j; int A [2] [3] = {3, 4, 5, 6, 7, 8}; // int * P [3]; // represe
Function pointer
Is a pointer to a function, which can be defined as follows:
INT (* pfunc) (INT, INT );
This statement is interpreted as follows:
First (* pfunc), so pfunc is a pointer;
In another explanation (INT, INT), pfunc points to a function. There are two parameters of this function, both of which are integer;
Finally, return value.
Therefore, if a functi
Two ways to declare constants in C languageconst INT valueint const ValueIf you want to declare a constant pointer, which is a pointer to a constant, you can refer to the constant declaration above to modifyconst INT *ptrint const *PTRConsider *ptr as a whole, then ptr in *ptr is a pointer to a constant. As the name implies, a
Sort C and pointer 1, and sort c and pointer1. C language commentsIn C, if you need to comment out a piece of code that may already exist in the/***/annotation form, you can use:# If 0Statements# EndifComment out this code in this form (statements represents this code ). The reason for this is that the C language does not allow nested comments. That is to say, the content between the first/* and the first */symbol is regarded as comments, no matter ho
Java --> multi-thread replication (File pointer), java -- pointer
--> Two methods are used here... actually, they are not two. They are just a little different...
---> Test class
Package com. dragon. java. multithreadcopy; import java. io. file; import java. util. optional;/** use multiple threads to copy the file 1 */public class Test {public static void main (String [] args) {@ SuppressWarnings ("resource
#include using namespacestd;//Note how pointer arrays and array pointers point to two-dimensional arrays, respectively.#include Main () {Static intm[3][4]={0,1,2,3,4,5,6,7,8,9,Ten, One};/*define two-dimensional array m and initialize*/ int(*p) [4];//The array pointer p is a pointer to a one-dimensional array with 4 int elements per one-dimensional array in
[Transfer] http://hi.baidu.com/maxint/blog/item/fc817c2f29881f331e3089ef.html
1. Security pointer
Since opencv2.0, many C data structures have changed to C ++ classes. Considering compatibility, the old APIs are retained. In terms of memory management, a secure pointer PTR is provided, so that the old data structure (iplimage, cvmat, etc.) that requires manual memory management does not require manual relea
Array and pointer, array pointer
1. dynamically allocate a one-dimensional array
Int * p = (int *) malloc (sizeof (int) * 10); // or int * p = new int [10];
2. dynamically allocate two-dimensional arrays 2X5
Int * p = (int *) malloc (sizeof (int) * 10); // or int * p = new int [10]; int (* pp) [5] = (int (*) [5]) p;
3. dynamically allocate a 3D array 12 = 3 (surface) x 2 (ROW) x 2 (column)
Int * p = (i
Void pointer conversion (2), void pointer ConversionVoid pointers can be explicitly converted to pointers with smaller or identical storage alignment limitations, but data may be distorted. The so-called "same storage alignment limit" means that the length of data in the memory indicated by the void pointer is equal to the length of the data in the memory indicat
Core tips:1. CR macro (containing Record): Gets the parent struct-body variable pointer based on the member pointer2.0 pointers to the magical.There are many uses of CR macros in Edkii code, such as the clock interrupt handler function Coretimertick.VOID Efiapi Coretimertick (in UINT64 Duration ) { IEVENT *Event; ... if (! Islistempty (mefitimerlist)) { =CR (Mefitimerlist.forwardlink, IEVENT, Timer.link, event_signature); ... }
standpoint, this coupling is not feasible. A better approach is to have these resource owners delegate the lifetime management responsibility of resources to a smart pointer. When no sharer exists, the smart pointer can safely release the resource.Exceptionally safe, simply to say that there is no resource leak when the exception is thrown and that the state of the program is consistent. If an object is dy
You can declare a pointer to a struct type object.structmystruct{intA; intb; intc;};structMyStruct SS = { -, -, +};//The struct object SS is declared, and the members of the SS are initialized to 20,30 and 40. structMyStruct *ptr = ss;//a pointer to the struct object SS is declared. Its type is mystruct *, and the type it points to is mystruct. int*pstr = (int*) ss;//a
Struct stat st;Struct stat * st;
[Case-based explanation] Struct stat * st;Is a pointer that defines a stat struct,This sentence focuses on "pointer", which is essentially a 32-bit number (in a 32-bit architecture.For names and entities:Name:A pointer named StEntity:In the memory, there is only one 32-bit space to store this
Empty pointer nullin the C language, if a pointer does not point to any data, we call itNULL pointer, withNULLrepresentation. For example:int *p = NULL;
note Case-sensitive, NULL does not have any special meaning, just an ordinary identifier.
NULL is a macro definition, instdio.his defined as:#define NULL ((void *) 0)(void *)0indicates that the value
How does the C ++ pointer Parameter Pass the memory ?, Pointer Transmission
Several examples are provided to illustrate the memory transfer problem of the C ++ pointer parameter.
Example 1:
Void GetMemory (char * p, int num)
{
P = (char *) malloc (sizeof (char) * num );
Return;
}
Int main (void)
{
Char * str = NULL;
GetMemory (str, 30 );
Std: cout
}
Analysis: I
Example one: function pointersNote that the pointer function is different from the function pointer representation method, so don't confuse it. The simplest way to discern is to see if the pointer in front of the function name is enclosed in parentheses (), and if it is included as a function pointer, the
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.