卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章21315本站已运行3412

编写一个C程序,演示指针的示例

指针是一个存储另一个变量地址的变量。

指针的特点

  • 指针节省内存空间。

  • 由于直接访问内存位置,指针的执行时间更快。

  • 在指针的帮助下,内存被有效地访问,即动态分配和释放内存。

  • 指针与数据结构一起使用。

声明一个指针

int *p;

这意味着“p”是一个指针变量,它保存另一个整型变量的地址。

指针的初始化

地址运算符(&)用于初始化指针变量。

例如,

int qty = 175;
int *p;
p= &qty;

编写一个C程序,演示指针的示例

通过变量访问变量指针

要访问变量的值,请使用间接运算符 (*)。

程序

 现场演示

#include<stdio.h>
void main(){
   //Declaring variables and pointer//
   int a=2;
   int *p;
   //Declaring relation between variable and pointer//
   p=&a;
   //Printing required example statements//
   printf("Size of the integer is %d</p><p>",sizeof (int));//4//
   printf("Address of %d is %d</p><p>",a,p);//Address value//
   printf("Value of %d is %d</p><p>",a,*p);//2//
   printf("Value of next address location of %d is %d</p><p>",a,*(p+1));//Garbage value from (p+1) address//
   printf("Address of next address location of %d is %d</p><p>",a,(p+1));//Address value +4//
   //Typecasting the pointer//
   //Initializing and declaring character data type//
   //a=2 = 00000000 00000000 00000000 00000010//
   char *p0;
   p0=(char*)p;
   //Printing required statements//
   printf("Size of the character is %d</p><p>",sizeof(char));//1//
   printf("Address of %d is %d</p><p>",a,p0);//Address Value(p)//
   printf("Value of %d is %d</p><p>",a,*p0);//First byte of value a - 2//
   printf("Value of next address location of %d is %d</p><p>",a,*(p0+1));//Second byte of value a - 0//
   printf("Address of next address location of %d is %d</p><p>",a,(p0+1));//Address value(p)+1//
}

输出

Size of the integer is 4
Address of 2 is 6422028
Value of 2 is 2
Value of next address location of 2 is 10818512
Address of next address location of 2 is 6422032
Size of the character is 1
Address of 2 is 6422028
Value of 2 is 2
Value of next address location of 2 is 0
Address of next address location of 2 is 6422029
卓越飞翔博客
上一篇: 为什么我们在 C# 中使用 params 关键字?
下一篇: 返回列表

相关推荐

留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏