C语言中*p代表什么?还有*s代表什么?

RT
2025-03-22 17:40:11
推荐回答(5个)
回答1:

*p和*s中的p和s是你开设的指针型变量。
比如你开设变量时写:int *p,a; char *s,b[10];这就开设了指针变量p可指向整型数据,开设指针变量s可指向字符型数据或字符串;程序中写p=&a; *p=10;可将变量p指向的存储区(这里是你自己定义的变量a的位置)赋值为整型的10;s=b;或s=&b[0]; *s='a'; s++; *s='b'; s++; *s='c'; s++; *s=0;可用s顺序访问b数组将b[0]~b[3]存储字符串"abc"。

回答2:

  1. 声明变量时,*与前面的类型符结合起来向编译器指明后面紧跟的p或s是该类型符下的指针变量,如int *p;是声明p是int *型指针变量;

  2. 在表达式中,当p、s是普通变量时,表示乘以p、乘以s,如4*p表示4乘以变量p;

  3. 在表达式中,当p、s是指针变量时,表示取出p、s指针指向的内容,如char x='a',*p,ch;p=&x;ch=*p;,则ch='a';

  4. *与/结合成/*,表示注释开始,结合成*/表示注释结束,如/*Statement required variable*/;

  5. *作为一个普通的ASCII字符,参与构成字符串,如printf"%s\n","*p**pcb*");。

所以,*p、*s代表什么要因“环境”而定,不好笼而统之……

回答3:

加*表示指针类型的变量,没有指定类型的话,随意使用
但是在c中有一些习惯性的东西,很多变量会用英文单词或者缩写来表示
这样容易识别

所以,p是指针的通用表示方式,pioneer
s是string,字符串或者字符型

这个是习惯啊,不一定准确
要看上下文才能确定类型

回答4:

p,s本身没有意义,只是人为定义的变量 比如 char *p, int *s

*是指针
C中数列(array)也可以用*p,*s表示, 不过要分配内存

回答5:

因情况而定的。p,s因特定环境赋以特定含义。主要看*的作用意义,可能是乘,可能是指针。