c语言中pp
A. c语言中 关于返回值 谁能具体讲一下
你这个问题很笼统
我就大概说下返回值的东东吧
在C语言里面所谓返回值是说一个函数当他执行到return的时候他会停止执行下面的语句向引用他的地方传递一个值
下面举例子说明
int
pp(void
)
//那个int就代表返回值的类型
{
……
return
0;
//这个就代表给执行pp这个函数的地方返回int类型的0
}
如果在主函数中有一句a=pp();那么等号右边就等于int
类型的0
,如果a是int类型那么a就等于0
return后面还可以接表达式
int
kk(int
a,int
c)
{
return
a+c;
//这个就代表给执行pp这个函数的地方返回a+c的结果
}
如果调用的地方写int
k;
k=kk(3,4);那么结果就是k等于7
当然返回值类型不是只有int
还可以有char
float那些和结构体类型
如果你不需要返回的时候可以写void
kk(void){}这样就不会返回了
但是如果你是写
kk(void){}没有前面的void默认是给你在前面补上int的而不是无返回值
还有什么问题你再追问吧
B. c语言中#define pp()后在函数中使用pp()的作用是什么
前面两行是头文件。 #define N 3 是宏定义,define是定义的意思,这句的意思是把N的值定义为3。 在程序中后面出现的所有N的值都为3。 fp=fopen("stud","wb");是文件操作。fp是指针变量;fopen()是函数,用来打开文件;stud是文件名;wb是打开或建立一个二进制文件、只允许写数据。这句的意思是打开名为stud的文件,并用二进制写入数据。
C. c语言中语句DozerShoveCompute pp;是什么意思
DozerShoveCompute是一个自定义的数据类型,具体还要看之前的定义或头文件中的定义
此句开设了DozerShoveCompute类型的变量pp,或者说开设了该类型名为pp的一个实例。
猜测:按照自定义类型取名分析来说,这是一个推土机推土计算结构。
如果是c++程序是一个推土机推土计算类。
D. c语言的指针部分*p与p的区别是什么
p是指针变量,其值是一个变量的地址。p收到了哪个变量的地址,就指向哪个变量。该变量成为p的对象。
*p是p所指向的对象的值。
例如:int i=3,*p;
p=&i; 注意:p收到i的地址,故p指向i,i是p的对象。
printf("%d,%d ",i,*p); 输出:3,3 注意:*p是p所指向的对象的值,即i的值。
E. **(pp 1)在c语言中是什么含义
“/=”属于复合赋值运算符中的一种,表示把左边的变量除于右边变量的值赋予右边的变量,例如:a/=b等价于a=a/b。同类的还有*=(例如:a*=b等价于a=a*b)、+=(例如:a+=b等价于a=a+b)、-=(例如:a-=b等价于a=a-b)、%=(例如:a%=b等价于a=a%b(这里的%符号是求余运算符,a%b表示求a除于b的余数))。或许你还会问为什么a/=b为什么不直接用a=a/b来表示,这是因为这样的表示方法可以让程序更加简洁。
F. C语言 INT (*PP) [2] 指针的疑问
int
*pz[2]才是指向2个int的指针,int(*pz)[2]是以个指向含有两个元素的数组,指向的类型是int型的指针
G. C语言指针**p是什么意思
**p表示p也表示地址,简单的说,这个地址对应的存储单元存储的数也是一个地址,而不是数值,而这个被存储的地址对应的存储单元存储的数据才是真正的相应类型的数值!
例如:
int i=10; //定义了一个整型变量
int *p=&i; //定义了一个指针指向这个变量
int **p1=&p; //定义了一个二级指针指向p指针
那么取出10的值方式为:
printf(“i=[%d] ”,*p);
printf(“i=[%d] ”,**p1);
(7)c语言中pp扩展阅读:
指针与数组关系
指针数组:就是一个由指针组成的数组,那个数组的各个元素都是指针,指向某个内存地址。char *p[10];//p是一个指针数组
数组指针:数组名本身就是一个指针,指向数组的首地址。注意这是一个常数。
example:
char (*p)[10]//p是一个数组指针
函数指针:本身是一个指针,指向一个函数入口地址,通过该指针可调用其指向的函数,使用函数指针可实现回调函数。