指针变量带*和不带*的区别是什么
时间: 2023-11-17 09:07:33 浏览: 426
指针变量带*和不带*的区别主要有两点:
1. 定义方式不同。带*的指针变量定义时需要加上*,表示这是一个指针变量,而不带*的指针变量定义时不加*。例如,int* ptr1; 和 int ptr2; 是两种不同的定义方式。
2. 操作方式不同。带*的指针变量可以通过*对指针所指向的内存进行操作,而不带*的指针变量只能对指针本身进行操作。例如,*ptr1 = num; 表示将num的值存储到ptr1所指向的内存中,而ptr2 = # 表示将num的地址存储到ptr2中。
带*的指针变量通常用于动态内存分配和函数参数传递等场景,而不带*的指针变量主要用于数组和结构体等数据类型中。
相关问题
c语言指针带*和不带*的区别
在C语言中,指针是一个值为内存地址的变量或数据对象。指针变量是用来存储内存地址的变量,而不是存储实际的数据。在声明指针变量时,需要在变量名前加上一个星号(*),这个星号表示这是一个指针变量。而在使用指针变量时,需要使用星号(*)来访问指针所指向的内存地址中存储的数据。因此,带星号的指针变量表示指向某个内存地址的指针,而不带星号的指针变量表示存储某个内存地址的指针。简单来说,带星号的指针变量是指针类型,不带星号的指针变量是整型类型。
指针变量带星和不带星的区别是什么
指针变量带星和不带星的区别如下:
1. 带星号的指针变量表示该变量是指向另一个变量的指针,可以通过该变量来访问指向的变量。例如,int* p表示p是一个指向整型变量的指针。
2. 不带星号的指针变量表示该变量是一个指针类型的变量,但不指向任何变量。例如,int* p;表示p是一个整型指针变量,但p目前不指向任何整型变量。
需要注意的是,在对指针变量进行操作时,需要使用星号操作符(*)来访问指针所指向的变量,例如*p表示访问指针p所指向的整型变量的值。
阅读全文