
求教一道C语言题目
若有定义:typedefint*INTEGER;*INTEGERp;则下面叙述中正确的是:【】A、p是与INTEGER相同的类型B、p是一个整形变量C、程序中可用INTE...
若有定义:
typedef int *INTEGER;
*INTEGER p;
则下面叙述中正确的是:【 】
A、p是与INTEGER相同的类型
B、p是一个整形变量
C、程序中可用INTEGER定义int类型指针变量
D、程序中可用INTEGER定义int类型变量
我想问A为什么错了……求指教谢谢!! 展开
typedef int *INTEGER;
*INTEGER p;
则下面叙述中正确的是:【 】
A、p是与INTEGER相同的类型
B、p是一个整形变量
C、程序中可用INTEGER定义int类型指针变量
D、程序中可用INTEGER定义int类型变量
我想问A为什么错了……求指教谢谢!! 展开
2个回答
展开全部
int 类型等同于*INTEGER,所以INTEGER应该是整形指针类型
*INTEGER才是int
*INTEGER才是int
追问
【p是与INTEGER相同的类型】这句话为什么错了?
追答
p是int*类型
INTEGER是int
展开全部
#include<iostream>
using namespace std;
fun(char *w,int n )
{
char t,*s1,*s2; //s1,s2相当于字符数组的首地址比如"a[]"中的a
s1=w;s2=w+n-1;//将字符串常量"1234567"的首地址赋给s1,将字符串中"7"的地址赋给s2
while(s1<s2) //一开始s1中的地址小于s2中的地址 s1 < s2
{ //第一次执行while时:{t ='1';*s1 = '7'; *s2 = '1'},p指向字符串"1,7,3,4,5,1,7"
t=*s1++; // s1 <s2
*s1=*s2--;//第二次执行while时:{t ='7';*s1 = '1'; *s2 = '7'},p指向字符串"1,7,1,4,7,1,7"
*s2=t; // s1=s2=w+3
} //第三次执行while时:{t ='1';*s1 = '7';*s2 = '1'},p指向字符串"1,7,1,1,7,1,7"
}
main()
{
char p[] = "1234567";
//p="1234567";注意此处有一个错误,字符指针p指向一个常量字符后面在fun函数中就不能对其进行改变,不然会出错
//应该改为p[]="1234567",数组内容才可以改变,最后输出内容及执行次数已经分析,希望能帮到你!
fun(p,strlen(p));
puts(p);
}
这样可以么?
using namespace std;
fun(char *w,int n )
{
char t,*s1,*s2; //s1,s2相当于字符数组的首地址比如"a[]"中的a
s1=w;s2=w+n-1;//将字符串常量"1234567"的首地址赋给s1,将字符串中"7"的地址赋给s2
while(s1<s2) //一开始s1中的地址小于s2中的地址 s1 < s2
{ //第一次执行while时:{t ='1';*s1 = '7'; *s2 = '1'},p指向字符串"1,7,3,4,5,1,7"
t=*s1++; // s1 <s2
*s1=*s2--;//第二次执行while时:{t ='7';*s1 = '1'; *s2 = '7'},p指向字符串"1,7,1,4,7,1,7"
*s2=t; // s1=s2=w+3
} //第三次执行while时:{t ='1';*s1 = '7';*s2 = '1'},p指向字符串"1,7,1,1,7,1,7"
}
main()
{
char p[] = "1234567";
//p="1234567";注意此处有一个错误,字符指针p指向一个常量字符后面在fun函数中就不能对其进行改变,不然会出错
//应该改为p[]="1234567",数组内容才可以改变,最后输出内容及执行次数已经分析,希望能帮到你!
fun(p,strlen(p));
puts(p);
}
这样可以么?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询