社区
C语言 帖子详情 请问C语言中的u_char是个什么东西?出处是哪里? openjavas 2012-02-15 02:51:45 请问C语言中的u_char是个什么东西?这是标准的数据类型,还是哪里定义的?出处是哪里?C99?
...全文
3321 10 打赏 收藏 请问C语言中的u_char是个什么东西?出处是哪里? 请问C语言中的u_char是个什么东西?这是标准的数据类型,还是哪里定义的?出处是哪里?C99? 复制链接
扫一扫 分享 转发到动态 举报 AI 作业
写回复 配置赞助广告取 消
确 定
用AI写文章 10 条回复 切换为时间正序 请发表友善的回复… 发表回复 打赏红包 需支付: 0.00 元 取 消 确 定 liuzhiya_05 2012-02-15 打赏举报 回复 应该是用户自己定义的:typedef unsigned char 转换为u_char,无符号的字符型 AnYidan 2012-02-15 打赏举报 回复 [Quote=引用 1 楼 czh3642210 的回复:]
u_char是无符号的char型,不是标准ansi,c的内嵌类型,而是开发环境上的头文件自己定义的:typedef unsigned char u_char类似地名称还有UCHAR等等
[/Quote]
++ luckyjungle 2012-02-15 打赏举报 回复 无符号字节 emarquis 2012-02-15 打赏举报 回复 来晚了。。。。。。。 面包大师 2012-02-15 打赏举报 回复 u_char应该算是posix的primitive type justkk 2012-02-15 打赏举报 回复 一个类型定义吧
typedef unsigned char u_char; luciferisnotsatan 2012-02-15 打赏举报 回复 unsigned char www_adintr_com 2012-02-15 打赏举报 回复 不是标准的.
VC 里面是 winsock.h
linux 应该是 sys/types.h 面包大师 2012-02-15 打赏举报 回复 u_char是无符号的char型,不是标准ansi,c的内嵌类型,而是开发环境上的头文件自己定义的:typedef unsigned char u_char类似地名称还有UCHAR等等 代码语法错误分析工具pclint8.0 代码静态分析工具PC-LINT安装配置
PC-Lint是C/C++软件代码静态分析工具,你可以把它看作是一种更加严格的编译器。它不仅可以检查出一般的语法错误,还可以检查出那些虽然符合语法要求但不易发现的潜在错误。
C语言的灵活性带来了代码效率的提升,但相应带来了代码编写的随意性,另外C编译器不进行强制类型检查,也带来了代码编写的隐患。PCLint识别并报告C语言中的编程陷阱和格式缺陷的发生。它进行程序的全局分析,能识别没有被适当检验的数组下标,报告未被初始化的变量,警告使用空指针,冗余的代码,等等。软件除错是软件项目开发成本和延误的主要因素。PClint能够帮你在程序动态测试之前发现编码错误。这样消除错误的成本更低。
使用PC-Lint在代码走读和单元测试之前进行检查,可以提前发现程序隐藏错误,提高代码质量,节省测试时间。并提供编码规则检查,规范软件人员的编码行为。
由于PC-LINT对于一般程序员来说可能比较陌生,有好多人安装了也不知道怎样配置和使用。
下面我就根据自己的安装和配置心得对PC-Lint的安装、配置及使用进行下详细说明.本人主要介绍了将PC-Lint集成到VC++6.0和SourceInsight的方法和步骤。
(一)Windows下C/C++开发工具中,VC6使用较为普遍,因此这里先讲下VC6.0环境中集成pclint的步骤.
首先, 当然要下载软件,正版软件要200多$呢,买不起!所以只好网上找免费的拉。从http://www.61ic.com/down/othe/pclint.rar处可以下载到一个8.0版本的pclint.
1.将pclint.rar解压至c:\, 这样lint文件就位与c:\pclint(安装目录)下了。
2.将c:\pclint\lnt 下的3个文件lib-w32.lnt,env-vc6.lnt,co-msc60.lnt拷贝至c:\pclint下, 再在安装目录下创建std.lnt和options.lnt两个文件,其中std.lnt的内容如下
// contents of std.lnt
c:\pclint\co-msc60.lnt
c:\pclint\lib-w32.lnt
c:\pclint\options.lnt -si4 -sp4
-i"D:\Program Files;D:\Program Files\Microsoft Visual Studio\VC98\Include"
//end
其中-i后面的路径名为VC的安装路径和VC Include 文件路径,根据自己的修改便可。
options.lnt 内容可为空,为定制内容,以后需要时再添加。
准备工作做完了,下一步就是要将pclint集成到VC6中去,先配置lint使之能对单个C或C++文件进行检查。
1.打开VC6,tools--->customize-->tools 新建一个名为pclint的项,在下面填入
command: C:\pclint\lint-nt.exe
arguments: -u c:\pclint\std.lnt c:\pclint\env-vc6.lnt "$(FilePath)"
Use Output Window 打上勾
close 完成。 这个在你VC窗口tools菜单下应该多了一个pclint选项,可以用它来运行lint程序,对你的c/c++代码进行静态检查了。
现在就可以用个小程序测试一下pclint了
//test1.cpp
#include
class X
{
int *p;
public:
X()
{ p = new int[20]; }
void init()
{ memset( p, 20, 'a' ); }
~X()
{ delete p; }
};
编译这个文件,看下你的编译器给你多少警告,再运行下lint, 可以自己对比一下。
我的机器上,VC产生0 errors 0 warnings, 而lint程序产生了如下8条警告信息,有些还是很有用处的提示,这里就不一一分析了.
test.cpp(12): error 783: (Info -- Line does not end with new-line)
test.cpp(7): error 1732: (Info -- new in constructor for class 'X' which has no assignment operator)
test.cpp(7): error 1733: (Info -- new in constructor for class 'X' which has no copy constru c语言中__attribute__的意义 GNU C的一大特色就是__attribute__机制。__attribute__可以设置函数属性(Function Attribute)、变量属性(Variable Attribute)和类型属性(Type Attribute)。
__attribute__书写特征是:__attribute__前后都有两个下划线,并切后面会紧跟一对原括弧,括弧里面是相应的__attribute__参数。
... C语言中 unsigned char 与 signed char 不同输出格式一些认识 首先考虑下面代码输出什么?
#include
int main(void)
{
signed char a = -1;
unsigned char b = -1;
printf("%%d:\n");
printf("%d\n", a);
printf("%d\n", b);
printf("\n%%u:\n");... c语言判断utf-8中文字符串,C语言中判断一个char*是不是utf8编码分享 —-想了解C语言中判断一个char*是不是utf8编码分享的全部内容且更多的C语言教程关注C语言中判断一个char*是不是utf8编码里我修改了一下, 纯ASCII编码的字符串也返回true, 因为UTF8和ASCII兼容实例代码:int utf8_check(const char* str, size_t length) { size_t i; int nBytes; u... C语言定义变量用什么字母,C语言中变量名有什么要求 C语言中,什么是变量和变量名?它们的区别是什么?... 导航:网站首页 >C语言中变量名有什么要求 C语言中,什么是变量和变量名?它们的区别是什么?C语言中变量名有什么要求 C语言中,什么是变量和变量名?它们的区别是什么?相关问题:匿名网友:1、严格采用阶梯层次组织程序代码:各层次缩进的分格采用VC的缺省风格,即每层次缩进为4格,括号位于下一行。要求相匹配的大括号在同一列,对继行则要求再缩进4格。例如:2、提示信息字符串的位置在程序中需要给出的提...
C语言
70,023
社区成员
243,263
社区内容
发帖 与我相关 我的任务 C语言 C语言相关问题讨论 复制链接
扫一扫 分享 确定 社区描述 C语言相关问题讨论 社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告 试试用AI创作助手写篇文章吧
+ 用AI写文章