C, %u代表什么代表无符号整数 是不是我定义a=-1,输出是调用%u,输出的结果是1呢?我运行 出来是一个很大的数

来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/25 02:46:41
C,%u代表什么代表无符号整数是不是我定义a=-1,输出是调用%u,输出的结果是1呢?我运行出来是一个很大的数C,%u代表什么代表无符号整数是不是我定义a=-1,输出是调用%u,输出的结果是1呢?我运

C, %u代表什么代表无符号整数 是不是我定义a=-1,输出是调用%u,输出的结果是1呢?我运行 出来是一个很大的数
C, %u代表什么
代表无符号整数 是不是我定义a=-1,输出是调用%u,输出的结果是1呢?
我运行 出来是一个很大的数

C, %u代表什么代表无符号整数 是不是我定义a=-1,输出是调用%u,输出的结果是1呢?我运行 出来是一个很大的数
目前的编译器一般int为32位的,所以-1用%u输出为4294967295,如果你是这样写的unsigned a=-1;其实是两步,第一步:unsigned a;第二步:a=-1;因为a为unsigned型的,所以-1会先强制转换为unsigned型,-1在内存中是1111111111111111111111111111111共32个1,因为按%u读取,所以为2^32-1=4294967295