package main
import (
"fmt"
"os"
"io"
"bytes"
)
func main() {
var w io.Writer
w = os.Stdout
f := w.(*os.File) // 成功: f == os.Stdout
c,ok := w.(*bytes.Buffer) // 死机:接口保存*os.file,而不是*bytes.buffer
fmt.Printf("f:%T, c:%T, w:%T, ok:%T\n",f,c,w,ok)
fmt.Print(" f=",f," c=",c," w=",w," ok=",ok)
}