指针中的细节代码

#include <stdio.h>
#include <strig.h>
int main(int argc, char *argv[])
{
    //指针的遍历输出,向大地址偏移 
int a[]={3,4,5,6,9,98};
   int *p;
   p=a;
   int i;
   for(i=0;i<sizeof (a)/sizeof(int);i++){
       printf("a[%d]=%d\n",i,a[i]);
       printf("a[%d]=%d\n",i,p[i]);
       printf("a[%d]=%d\n",i,*(a+i));
       printf("a[%d]=%d\n",i,*(p+i));
       printf("a[%d]=%d\n",i,*(&a[0]+i));
       printf("a[%d]=%d\n",i,*(&p[0]+i));
      }
       
   //区分指针表达式的语意 
       
int a[]={3,8,6,8,6,9};
       int *p;
        p=a;
       int k=0,k1=0;
       k=*(p+1);//输出k=8 
       printf("%d\n",k);
       
       k=*p+1;//输出k=4 
       printf("%d\n",k);
       
       k=*p++ +1;
       k1=*p;//输出k=4,k1=8; 
       printf("%d  %d\n",k,k1); 
       
       
       //倒序输出字符串
     
char ch[]="helloworld!";
       char *c;
       char *p;
       c=ch;
       p=ch+strlen(ch)-1;
       while(c<p){
         char temp;
         temp = *c;
         *c = *p;
         *p = temp;
         c++;
         p--;
    } 
       printf("%s\n",ch);
       
    return 0;
}

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容