
C/C++学习
sunnylgz
这个作者很懒,什么都没留下…
展开
-
C语言中负数除法与右移取整问题
今天碰到了负数除法与右移的替代问题,借机研究一下C语言中负数除法的问题。此处只讨论整数除2的幂次方的情况,并取-7~-5除以4为例,不讨论一般除法的移位优化。1. 负数右移对于有符号整数,右移时按高位补符号位的原则,则结果会向小于它的整数取整。如-5 >> 2 = -2;-6 >> 2 = -2;-7 >> 2 = -2;2. 负数除法(截断)博文《议“原创 2013-12-26 15:38:42 · 15693 阅读 · 0 评论 -
Linux makefile 教程 非常详细,且易懂
最近在学习Linux下的C编程,买了一本叫《Linux环境下的C编程指南》读到makefile就越看越迷糊,可能是我的理解能不行。 于是google到了以下这篇文章。通俗易懂。然后把它贴出来,方便学习。 后记,看完发现这篇文章和《Linux环境下的C编程指南》的makefile一章所讲述的惊人的相似,只是这篇文章从一个实例切入,在有些地方比转载 2012-07-25 20:27:42 · 3119 阅读 · 2 评论 -
C/C++创建多级目录函数,支持windows和linux
转载自:http://tianyou8.blog.hexun.com/57206664_d.html1。首先请加上这些预编译#ifdef _WIN32#include #include #elif _LINUX#include #include #endif#ifdef _WIN32#define ACCESS _access#define MKDIR(a) _转载 2012-07-03 10:03:19 · 25063 阅读 · 2 评论 -
Valgrind使用以及Linux下调试技术
总结了几个很好的链接:Valgrind官方网站:http://valgrind.org/Valgrind使用简单说明:http://wenku.baidu.com/view/c84f0218227916888486d79d.htmlValgrind介绍:http://wenku.baidu.com/view/69926be8998fcc22bcd10db7.htmlLinux原创 2012-07-04 15:41:04 · 1100 阅读 · 0 评论 -
-2147483648是不是int常量
32位int的表示范围为:-2147483648 ~ 2147483647 但查看VS 2008的头文件有如下定义:#define INT_MIN (-2147483647 - 1) /* minimum (signed) int value */为什么不直接定义为:-2147483648呢?同时我在一本C语言的书中看到,只有在int范围内的全部由数原创 2012-06-08 10:56:28 · 3775 阅读 · 0 评论 -
在VS2008下使用CLR开发简单的用户界面程序
基本界面的设计部分不用说了,有图形化的设计工具,非常方便。下面是自己在写第一个CLR程序时遇到的难题与解决方案。1. 文件打开/保存对话框在主界面中添加相应的openFileDialog和SaveFileDialog,需要运行的地方加入如下语句:openFileDlg1->ShowDialog();edtSourceFile->Text = openFileDlg1->F原创 2012-06-06 18:59:12 · 5113 阅读 · 1 评论 -
fourcc的涵义以及在C++编程中的实现
fourcc全称four-character codes,是在编程中非常常用的东西,一般用作标示符。比如wav、avi等riff文件的标签头标示,quake 3的模型文件.md3中也大量存在等于“idp3”的fourcc。它是一个32位的标示符,其实就是typedef unsigned long fourcc用宏生成fourccfourcc是由四个字符拼接而成的。生成fourcc的传统转载 2012-06-01 09:56:51 · 2836 阅读 · 0 评论 -
C语言中string函数详解
PS:本文包含了大部分strings函数的说明,并附带举例说明。本来想自己整理一下的,发现已经有前辈整理过了,就转了过来。修改了原文一些源码的问题,主要是用char *字义字符串的问题,导致程序运行时崩溃。另外自己重写了部分测试程序,使其更能满足自己测试的需要。不当之处,还请海涵转载 2011-08-10 22:18:22 · 146489 阅读 · 3 评论 -
指针与数组是如何访问的——可以用extern int *p作为int p[N]的外部声明吗?
[摘要]C语言中,很多情况下指针与数组的的使用方式十分类似,使用数组名为一个指针变量赋值也是完全合法的。这造成一个假象,即数组就是指针,对于它们二者的区别是一个老生常谈的话题,本文仅从指针与数组访问内存的方式进行区分,其余不再赘述。另外还讨论了使用指针作为数组的外部声明时产生的问原创 2011-09-30 11:39:34 · 2707 阅读 · 1 评论 -
让你的C程序更有效率的10种方法
PS:原文翻译的有些地方不太确切,尤其是对于第7点static的使用的翻译容易引起误解,故稍做调整,如有妥之处,还请谅解!任何代码的美丽不仅在于找到一个给定的问题的解决方案,还在它的简单性,有效性,紧凑性和效率(内存)。设计的代码比实际执行更难 。因此,每一个程序员当用C语言转载 2011-08-05 14:54:26 · 1913 阅读 · 5 评论 -
C/C++刁钻问题各个击破之细说sizeof
转自w57w57w57优快云博客:http://blog.youkuaiyun.com/w57w57w57/article/details/6626840这篇文章写得太好了,生怕找不着了,故转载如下:摘要:Sizeof的作用非常简单:求对象或者类型的大小。然而sizeof又非常转载 2011-08-04 21:03:49 · 1355 阅读 · 2 评论 -
学习《 C语言的那些小秘密之字节对齐》
转自bigloomy 优快云博客:http://blog.youkuaiyun.com/bigloomy/article/details/6633008学习笔记(和前篇《C/C++刁钻问题各个击破之细说sizeof》一起):1. #pragma value (value原创 2011-08-04 22:00:29 · 958 阅读 · 0 评论 -
64位平台C/C++开发注意事项
http://coolshell.cn/articles/3512.html在http://www.viva64.com/en/l/上例出了28个在64位平台上使用C/C++开发的注意事项,对于进入64位时代的程序员应该去看看这28个事项,这些英文读物对于有C/C++功底的朋友读起来应该并不难,我估计大约20-30分钟可以精读完一篇(或者更快),下面是这28个注意事项的列表。相信对大家转载 2014-01-24 16:52:39 · 1360 阅读 · 0 评论