1、scanf和scanf_s区别


2、取地址,输出
char b='a';
char* p=&b;
cout<<*p;
cout<<p;
p=(char*)"abc";
cout<<*p;
cout<<p;
cout<<(void*)p;
取地址,把b的地址给p
输出*p,是输出p的空间内的值;输出p,由于默认规则,会输出p是char*类型,cout会将其解释为C风格字符串,输出字符串,同时,由于没有'\0',会一直向后输出,因此输出为a加乱码
p为"abc"
输出*p,为abc;输出p,默认为char*类型,输出为abc,因为字符串末尾自带\0,不输出乱码;输出(void*)类型,将指针p强制转换为void*类型,cout会输出该指针的值(即字符串常量"abc"的首地址)