1. notes:
(1)/** * * * * * cannot be nested, and sometimes in a program there are comments, compilation will be problematic.
(2)#if 0 Statements #endif can compensate for the insufficiency of the first annotation.
2. The role of the statement: it is only required to be written once, easy to maintain and modify, eliminating the chance of inconsistent wording in multiple copies.
3.benefits of naming literal constants #define directives: increased code readability and ease of code modification
4.(pointer) dual indirect access: For example: **p
650) this.width=650; "Src=" Http://s2.51cto.com/wyfs02/M02/82/0F/wKioL1dJlTSQbmMgAADc-5JKIVk653.png-wh_500x0-wm_3 -wmp_4-s_2224170521.png "title="}1$p{l3v[s0[ze1exq@79ng.png "alt=" Wkiol1djltsqbmmgaadc-5jkivk653.png-wh_50 "/>
650) this.width=650; "Width=" height= "src="/e/u261/themes/default/images/spacer.gif "style=" Background:url (" /e/u261/themes/default/images/word.gif ") no-repeat center;border:1px solid #ddd;" alt= "Spacer.gif"/>
650) this.width=650; "Width=" 124 "height=" "src="/e/u261/themes/default/images/spacer.gif "style=" Background:url ( "/e/u261/themes/default/images/word.gif") no-repeat center;border:1px solid #ddd; "alt=" Spacer.gif "/>
650) this.width=650; "width=" 146 "height=" "src="/e/u261/themes/default/images/spacer.gif "style=" Background:url ( "/e/u261/themes/default/images/word.gif") no-repeat center;border:1px solid #ddd; "alt=" Spacer.gif "/>
The P pointer points to the Q address, i.e. p=&q;q points to a address, which is q=&a;*q=a=11;
*p=q=&a; **p=*q=a=11;
5. about * (p+1)
meaning: The essential meaning is to move the address in P to the next address, and then take the value
650) this.width=650; "Src=" Http://s4.51cto.com/wyfs02/M01/82/0F/wKioL1dJlYSQWBzOAAA3amjXuWA157.png-wh_500x0-wm_3 -wmp_4-s_2153731265.png "title=" J) r5[p87mom[b8h{$E {3[13.png "alt=" Wkiol1djlysqwbzoaaa3amjxuwa157.png-wh_50 "/>
6. A segment error occurred: the memory accessed exceeds the memory space given to the program by the system.
7. Exchange values: Using pointers, the method of invocation:
650) this.width=650; "Src=" Http://s2.51cto.com/wyfs02/M00/82/10/wKiom1dJlLriMJ--AACjkj3uHjk517.png-wh_500x0-wm_3 -wmp_4-s_4224199038.png "title=" 8v9x24u ($MPG 1t}j]444at0.png "alt=" Wkiom1djllrimj--aacjkj3uhjk517.png-wh_50 "/>
8. Memory Distribution
650) this.width=650; "Src=" Http://s3.51cto.com/wyfs02/M02/82/0F/wKioL1dJldXg209KAAAtBY1JEx8544.png-wh_500x0-wm_3 -wmp_4-s_2610493959.png "title=" 9R (i0udshh{p44i2wwvqcdf.png "alt=" Wkiol1djldxg209kaaatby1jex8544.png-wh_50 "/>
9. The array name represents the first address of the array
such as:#include <stdio.h>
{
int a[5]={1,2,32,56,45};
int *pa=a;
printf ("%d\n", * (p+1));
}
The pointer variable is always expected to hold an address.
This article is from the "11557552" blog, please be sure to keep this source http://11567552.blog.51cto.com/11557552/1784122
C and the pointer "I"