你写了个常量 '1' , delphi 编译器默认为Char型, 而这种Char后面没有#0结束字符,
而'10'则不同了,编译器默认为string型, string有个特点以 #0为结束标志,恰好pchar类型也是这种情况, 你写个'1',编译器会继续往后找#0,这样就可能访问越界出错,你的就是这种情况,如果你非要Show,则要这要写
Showmessage(Pchar('1'#0));
你已定义了str := '1';
就使用showmessage(str);
showmessage的参数类型是string