请问怎么使用程序块中定义的变量

请教如何使用程序块中定义的变量?
比如if语句块
if(判断s是否为a类型){
 double *r;
}else{
 bool *r;
}
接下来要用到r,可以把bool类型的*r强制转换为double;
但是编译器会提示r没有定义,我该怎样才能直接用r呢

加static好像不行吧
小弟新手见笑了

------解决方案--------------------
程序块中定义的变量只能在程序块中使用

单就楼主这个问题来看,没戏
C/C++是静态编译语言,变量的类型在编译期就已经确定,不可能做到在运行时更改类型

如果用void*来保存地址,再设一个变量用来表示类型,运行时根据后者来强制转换前者,也不是不可以,但本质上这其实就相当于延长了if的程序块,你还不如直接把if那两个程序块写长点


------解决方案--------------------
生命周期不一样