若已定义char s[10];则在下面表达式中不表示s[1]的地址是 .A)s+1 B)s++ C)&s[0]+1 D)
来源:学生作业帮 编辑:大师作文网作业帮 分类:数学作业 时间:2024/09/29 15:29:37
若已定义char s[10];则在下面表达式中不表示s[1]的地址是 .A)s+1 B)s++ C)&s[0]+1 D)&s[1]
若已定义char s[10];则在下面表达式中不表示s[1]的地址是 .
A)s+1 B)s++ C)&s[0]+1 D)&s[1]
为神马C错?
打错了 应该是为神马c是对的,那个+1不是应该在[ ]里面么?
若已定义char s[10];则在下面表达式中不表示s[1]的地址是 .
A)s+1 B)s++ C)&s[0]+1 D)&s[1]
为神马C错?
打错了 应该是为神马c是对的,那个+1不是应该在[ ]里面么?
错了因为数组名是常量不能自加 Cs[0]的地址再加一不就是s[1]的地址么?&s[0]+1=&s[1]
再问: s[0]的地址跟s[1]的地址不是相隔4么?不是应该+4么
再答: 不是的哦 你说的是变量在内存里存放占得字节 不同的变量之间是隔了本类型对应占得字节数 但这里是两个地址 上一个s[0]的地址 下面就是s[1]的地址了
再问: 就是因为char占的是1字节?
再答: 不是的丫 这跟char占几个字节没关系 如果你占得是4个字节的话 1234存的是s[0],5678存的是s[1],就说在内存里s[0],s[1]的地址隔了4个字节。。但是这里是&s[0]+1取出s[0]的地址再加一 这个一不是说的字节数 好比指针指向下一个地址 也就是s[1]的地址了
再问: s[0]的地址跟s[1]的地址不是相隔4么?不是应该+4么
再答: 不是的哦 你说的是变量在内存里存放占得字节 不同的变量之间是隔了本类型对应占得字节数 但这里是两个地址 上一个s[0]的地址 下面就是s[1]的地址了
再问: 就是因为char占的是1字节?
再答: 不是的丫 这跟char占几个字节没关系 如果你占得是4个字节的话 1234存的是s[0],5678存的是s[1],就说在内存里s[0],s[1]的地址隔了4个字节。。但是这里是&s[0]+1取出s[0]的地址再加一 这个一不是说的字节数 好比指针指向下一个地址 也就是s[1]的地址了
若已定义:char s[20]=”Good\ohelloworld”;则函数strlen(s+5)的值是()
设char s[10];int i=5;,下列表达式中,正确的表达式是( ).(1分)
已知char **s;下面正确语句是()A,s="ABCDEF";B,*s="ABCDEF";C,**s="ABCDEF
C++.若已定义:int a[10];则下面表达式中不表示a[1]的地址的是?
C语言题:定义:char s[20]="programming",*p=s;则不能正确表示S[2]元素的表达式是?
下面语句正确的是 A.char s[5] B.char s[5]="12345" C.chat s[56] D.char
若有定义语句:char s[3][10],(*k)[3],*p;则以下赋值语句正确的是:A、p=s; B、p=k; C、
6.有如下宏定义 #define s(a) a*3 ,则执行表达式x=s(1+2)后,变量x的值为( D).A.10 B
已知S是由实数构成的集合,且满足1)1不属于S;2)若a属于S,则1\(1-a).如果S不等于空集,S中至少含有
已知S是由实数构成的集合,且满足1)1不属于S;2)若a属于S,则1/1-a属于S.
求解几道C语言题23 有数组定义语句“char a[20];”,则正确的输入语句为( D ).A.scanf("%s",
定义语句:char s[3][10],(*k)[3],*p;,则以下赋值语句正确的为啥是 A)p=s; B)p=k; C