指针的各种操作
#include <iostream> #include <vector> #include <string> #define sum(a,b,c) a+b+c using namespace std; int a = 3; int main() { // int *p = NULL; // int a[] = {1, 2, 3, 4}; // p = a; // *(p++) += 100;//*p=*p+100;*p++ // printf("%d %d %d %d %d\n", *p, a[0], a[1], a[2], a[3]);//2,101,2,3,4 // int n[][3]={10,20,30,40,50,60}; // int (*p)[3]; // p=n; // cout<<p[0][0]<<","<<*(p[0]+1)<<","<<(*p)[2]<<endl; // p[0][0]指的是第一个元素; // p[0]+1指的是第一行第二个元素; // (*p)[2]数组指针,表示第一行的第三个元素; // **(p+1)表示第二行第一个元素; // 一维数组: // a <=> &a[0] a+1 <=> &a[1] // *a <=> a[0] *(a+1) <=> a[1] // 二维数组: // a[0] <=>&a[0][0] a[1] <=> &a[1][0] a[1]+1 <=> &a[1][1] // *a[0] <=>a[0][0] *a[1] <=> a[1][0] *(a[1]+1 ) <=> a[1][1] // char *p, *q; // p = (char*) malloc(sizeof(char) * 20); // q = p; // scanf("%s %s", p, q); // printf("%s %s\n", p, q); int s=0; { int a=5; s +=a++; } s += a++; printf ("%d\n",s); char ch[]={"abc\0def"}; char *p= ch; printf("%c",*p+4);//e printf("%c",*(p+4));//d getchar(); return 0; }