C语言题:定义:char s[20]="programming",*p=s;则不能正确表示S[2]元素的表达式是?A:P+2 B:*(S+2) C:P[2] D:P+=2,*PB和D我明白 主要是A和C
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/25 16:37:13
![C语言题:定义:char s[20]=](/uploads/image/z/10161720-0-0.jpg?t=C%E8%AF%AD%E8%A8%80%E9%A2%98%EF%BC%9A%E5%AE%9A%E4%B9%89%EF%BC%9Achar+s%5B20%5D%3D%22programming%22%2C%2Ap%3Ds%3B%E5%88%99%E4%B8%8D%E8%83%BD%E6%AD%A3%E7%A1%AE%E8%A1%A8%E7%A4%BAS%5B2%5D%E5%85%83%E7%B4%A0%E7%9A%84%E8%A1%A8%E8%BE%BE%E5%BC%8F%E6%98%AF%3FA%EF%BC%9AP%2B2+B%3A%2A%28S%2B2%29+C%3AP%5B2%5D+D%3AP%2B%3D2%2C%2APB%E5%92%8CD%E6%88%91%E6%98%8E%E7%99%BD+%E4%B8%BB%E8%A6%81%E6%98%AFA%E5%92%8CC)
C语言题:定义:char s[20]="programming",*p=s;则不能正确表示S[2]元素的表达式是?A:P+2 B:*(S+2) C:P[2] D:P+=2,*PB和D我明白 主要是A和C
C语言题:定义:char s[20]="programming",*p=s;则不能正确表示S[2]元素的表达式是?
A:P+2 B:*(S+2) C:P[2] D:P+=2,*P
B和D我明白 主要是A和C
C语言题:定义:char s[20]="programming",*p=s;则不能正确表示S[2]元素的表达式是?A:P+2 B:*(S+2) C:P[2] D:P+=2,*PB和D我明白 主要是A和C
*p=s,将数组的首地址赋给p,p+2 等同于 s+2,p[2]则等同于*(p+2),
C语言里,编译器会将指针操作转化为下标操作,如*(s+2)会被转化为s[2]运算