C语言技巧【枚举作为函数变量类型】【数据输入与输出】【do while循环体内scanf函数被跳过,循环结束】

时间:2022-02-28 04:20:27

枚举作为函数变量类型

摘录于:http://bbs.csdn.net/topics/340095770

比如这里:

typedef enum _SPIX_{
    SPI0    = 0x00,
    SPI1     = 0x01,
}SPIX;

extern unsigned char SPIx_ReadWriteByte(SPIX spix,unsigned char TxData);


数据输入与输出

本文摘录于:http://blog.csdn.net/ittechnologyhome/article/details/51564813


2.5 printf格式化输出数据的参数总结

格式符 解析方式
%hd 有符号十进制短整数(short)
%hu 无符号十进制短整数(unsinged short)
%d 有符号十进制整数(int或者long)
%lld 有符号十进制整数(long long)
%#o 无符号八进制整数(#表明进制)
%#x/%#X 无符号十六进制整数(#表明进制,大小写决定了输出数据的字母大小写)
%u 无符号十进制整数
%llu 无符号十进制整数(long long)用于存储身份证号
%c 字符
%s 字符串
%p 指针地址
%f 浮点数
%a 十六进制浮点数
%e/%E 指数形式的浮点数
%g f和e相比宽度更小的浮点数

scanf()函数主要是用于读取数据(通常来源于文件或者是用户从键盘的输入),并且按照指定的格式精确匹配(不能遗漏任何字符),绝大多解析数据的数据格式都和printf()一致。在扫描读取整数,浮点数和字符时通常变量名要加上地址符(&),在扫描读取字符串时变量名不需要加上地址符。scanf函数返回的是成功读取输入数据的个数

scanf()函数的一般形式是scanf(“格式字符串”,变量地址表)

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>

/*
scanf读取用户从键盘的输入数据
@author Tony 18610767221@163.com
@since 20160601 16:59
*/

void scanf_sample() {
int num = 0;
printf("num变量的地址为:%p\n",&num); //打印变量的内存地址
scanf("num=%d",&num); //根据地址对应的变量值对变量进行初始化赋值 控制台中应该输入num=整数值(例如12)
printf("num=%d\n",num);

int x = 1, y = 2, z = 3;//声明多个整数
scanf("x=%d,y=%d,z=%d",&x,&y,&z);//命令行窗口应该输入x=整数值,y=整数值,z=整数值 格式字符串必须完全匹配
printf("x=%d,y=%d,z=%d",x,y,z);
system("pause");

}


scanf函数不过滤空格

摘录于:https://www.cnblogs.com/czl-sy/archive/2013/04/07/3006109.html

C语言技巧【枚举作为函数变量类型】【数据输入与输出】【do while循环体内scanf函数被跳过,循环结束】

do while循环体内scanf函数被跳过,循环结束

摘录于:http://bbs.csdn.net/topics/391851692?list=lz

C语言技巧【枚举作为函数变量类型】【数据输入与输出】【do while循环体内scanf函数被跳过,循环结束】

增加了getchar():函数的调用