C unsigned 用法
例:#define NELE(a) (sizeof(a) / sizeof(a[0]))
int main() {
char str[] = {'E', 'M', 'C'};
for (int d=-1; d<=(NELE(str)-2);d++)
printf("%c",str[d+1]);
return 0;
}
判断printf()输出的是什么,结果可能出乎意料,什么也没有输出,原因呢?原因在于sizeof()方法返回的是一个unsigned int类型,故NELE(a)返回的是一个无符号整数,由于C语言的语法规定:当表达式中存在有符号类型和无符号类型时所有的操作数都自动转换为无符号类型。故上述程序中的d将自动变为无符号的整数,d变为了unsigned int型的最大值。所以没有任何输出。
相关文档:
C/VC目录操作
星尘 发表于 2006-10-11 15:54:00
0
推荐
一、目录操作函数介绍
在VC++的“direct.h”中定义了以下4个函数:
int chdir(const char *); //change directory
char * getcwd(char *, int); //get current working directory
int mkdir(const cha ......
---- 在数据库的应用开发中,常常会遇到性能和代价的之间矛盾。以作者在开发股市行
情查询和交易系统中遇到的问题为例,要在实时记录1000多只股票每分钟更新一次的行
情数据的同时,响应大量并发用户的数据查询请求。考虑到性价比和易维护性,系统又
要求在基于PC服务器,Windows NT平台的软硬件环境下实现。开 ......
VC中下面几个结构体大小分别是多少呢
struct MyStruct
{
double m4;
char m1;
int m3;
};
s ......
用一句话概括extern “C”这个声明的真实目的就是实现C++与C及其它语言的混合编程。
extern "C"的惯用法
(1)在C++中引用C语言中的函数和变量,在包含C语言头文件(假设为cExample.h)时,需进行下列处理:
extern "C"
{
#i nclude "cExample.h"
}
而在C语言的头文件中,对其外部函数只能指定为extern类 ......
#include<reg52.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char
uint date;
uchar mm=0,n=0;
uint k1,k2,k3,k4,k5,k6;
uchar code b[]={
0x3f,0x06,0x5b,0x4f,0x66, //0,1,2,3,4,
0x6d,0x7d,0x07,0x7 ......