一个看似简单而又不简单的问题
在VC++定义一个Unicode字符串可以按如下方式定义:
(1)wchar_t ws[]=L"Hi!";
(2)unsigned short ws[]=L"Hi!";
这需要编译器能够对L处理,但如果编译器不支持L"Hi!"这种方式,如何在标准C中实现这一简单功能呢?
也就是定义一个可变大小的unsigned short数组,让编译器分配内存,我想到的一种笨方法:
#define WIDESTRING1(s) {s[0],0}
#define WIDESTRING2(s) {s[0],s[1],0}
#define WIDESTRING3(s) {s[0],s[1],s[2],0}
.....................................
#define WIDESTRINGN(s) {s[0],...,s[N-1],0}
这样定义,N肯定要限定在一定范围内,使用时就更麻烦了,还要知道字符串到底多长。
最好使用宏命令解决,而不要使用函数的方式实现,因为那样就不必问这个问题了。
(1)wchar_t ws[]=L"Hi!";
(2)unsigned short ws[]=L"Hi!";
这需要编译器能够对L处理,但如果编译器不支持L"Hi!"这种方式,如何在标准C中实现这一简单功能呢?
也就是定义一个可变大小的unsigned short数组,让编译器分配内存,我想到的一种笨方法:
#define WIDESTRING1(s) {s[0],0}
#define WIDESTRING2(s) {s[0],s[1],0}
#define WIDESTRING3(s) {s[0],s[1],s[2],0}
.....................................
#define WIDESTRINGN(s) {s[0],...,s[N-1],0}
这样定义,N肯定要限定在一定范围内,使用时就更麻烦了,还要知道字符串到底多长。
最好使用宏命令解决,而不要使用函数的方式实现,因为那样就不必问这个问题了。
...全文
相关推荐
电子工程中比较器的工作原理及其应用实例解析
内容概要:本文档主要介绍了比较器的基础知识及其应用特性。比较器是一种专门设计用来比较两个输入端电压的器件,工作时呈现非线性特征,常用于将变化信号电平与固定电平(通常是基准电压)对比的情境下。文章详细讲解了比较器的基本组成结构和工作原理,以及重要的电气参数如输入失调电压、传播延迟、迟滞效应等,并介绍了几种特殊的比较器类型和功能,比如窗比较器、带内置锁存器功能的比较器和快速比较器等。比较器在ADC中的应用被特别提到,指出它是ADC的一个基本组成部分。 适合人群:对于需要掌握电子元件基础工作的技术人员来说非常适合,特别是那些希望深入了解模拟电子技术和数字转换技术的人。 使用场景及目标:该文档主要用于帮助读者理解和应用各种类型的比较器,在涉及到传感器监测、自动化控制设备、数据采集系统等方面的设计中有重要价值;此外还可以帮助读者熟悉如何避免实际使用过程中可能出现的问题如震荡现象。 其他说明:为了提高稳定性并防止不必要的频繁开关动作,有时会在比较器内部引入一定量的正反馈形成所谓“迟滞”。文档还提醒使用者关于高增益高速度情况下需要注意的一些特殊事项比如PCB板上正确的布线方法、屏蔽和去耦措施等以确保系统的可靠性和准确性。参考资料部分提供了进一步深入研究的书籍信息。
资料-比较器电路.zip
资料-比较器电路.zip
模拟电子技术基础童诗白第3版
模拟电子技术基础童诗白第3版习题答案 基础解题 教师手册
数字电子技术基础课件.pptx
数字电子技术基础课件.pptx
21世纪大学课程辅导丛书 模拟电子技术重点难点及典型题精解
21世纪大学课程辅导丛书 模拟电子技术重点难点及典型题精解


