1.scanf函数中的占位符是严格调用的,占位符是什么类型就只会读取相应类型。
2.printf函数和参数调用时则会发生截取和扩展来转化为相应类型
(1)字符型参数以整形输出
#include<stdio.h>
int main()
{char p = 'a';printf("%d",p);return 0;
}
(2)参数调用 ——整形形参调用字符型实参
#include<stdio.h>
#include<string.h>
void* my_memset(void* arr, int value, int x)
{void* p = arr;while (x--){*(char*)arr = value;arr=(char*)arr + 1;}return p;
}
int main()
{char arr[] = "hello bit";my_memset(arr+6,'1',3);printf("%s",arr);return 0;
}