EDA365电子工程师网

标题: 请教一个C语言句子!!!! [打印本页]

作者: lance_hnu    时间: 2012-11-26 15:18
标题: 请教一个C语言句子!!!!
temp=*((int*)a);5 Z* e3 [1 _, X8 T

% G( l* Z% D: Y5 G! D- s说明一下,temp是一个长整形变量,a是一个unsigned char a[4].% J; V( s: D: Q1 o

! O3 d* x, D- n7 O+ F+ J( Q& r这一句是实现什么功能呢??
作者: 南林维京    时间: 2012-11-27 10:07
一个指针吧
作者: 黑驴蹄子    时间: 2012-11-27 13:04
其实就是指向指针的指针8 b1 h/ u6 q4 M
将指针a的类型为整形  然后作为指针, l; m3 j' @; ?
此指针指向TEMP的值
作者: ArthurGXH    时间: 2012-11-27 21:55
本帖最后由 ArthurGXH 于 2012-11-27 21:58 编辑
2 R' @. g7 J4 R9 J* q
; V1 N' s  b2 ?/ o5 G& ]  r$ s) l. R# kunsigned char a[4];
  j4 o( n+ u! a9 [temp=*((int*)a);
" k7 B: F; c9 A& d- k1 t
& y* M- N6 M9 K3 s' M, A解释如下:
8 l$ I+ w! s* k3 r9 r( g" L- h2 c7 g          1.  a 是数组名,也是地址(即指针)。9 e" @, ^/ k9 Q5 I) I0 g+ v
          2. (int*)a 将指针强制转换成整形指针。
% V8 d2 Y0 T, e" m" q& R  J& p5 T          3. *((int*)a) 取出整数值。6 R; D5 ]3 b/ f: O+ [2 {
          4. temp=*((int*)a); 将取出整数值赋给temp。. E* F2 A( n- h# W

作者: lance_hnu    时间: 2013-1-5 00:38
ArthurGXH 发表于 2012-11-27 21:55
- j& R6 [& d' s& F0 Ounsigned char a[4];
- Q5 h( {5 z3 p  m0 B9 Xtemp=*((int*)a);! Z1 c: `  T! a1 q  L' D, {
3 L: n1 [7 S! p: _/ s- U. u; l
3 m! E) _9 f3 \. c+ ]: c6 N
哇,解答好全面,谢谢这位大哥!!
作者: two1405    时间: 2013-1-25 19:11
{:soso_e179:}




欢迎光临 EDA365电子工程师网 (https://bbs.elecnest.cn/) Powered by Discuz! X3.2