基础知识复习(二)——stdafx.h 头文件及x&(x-1)运算
今天好久没写过C++程序了,使用VS2013 新建空的控制台程序,结果自动生成了头文件和main 方法。
就了解了stdafx.h头文件的含义及用法。
stdafx:standard Application Framework extended,是预编译文件,将工程中的使用的一些标准的MFC 头文件预先编译,该工程再次编译时,就不需要编译该头文件,可直接使用编译的结果,可加快编译速度,节省程序运行时间。
x&(x-1),可将X中最后一位1 置为0;
使用x&(x-1)有两种用法:1,求x中包含1的位数,2 判断x是否为2的N次方;
具体代码:
// ConsoleApplication2.cpp: 主项目文件。 #include "stdafx.h"
#include "iostream"
using namespace System;
using namespace std; //判断x中包含1的个数
int CountOneSum(int x)
{
int count = 0;
while (x > 0)
{ x = (x&(x - 1));//将X中最后一个1 变为0,则执行与操作时,减少1的数量;
count++; } return count;
}; //判断一个数是否为2的N 次方,是2的N次方,则二进制只包含一个1 和若干0,x-1之后可将所有位置反,从而如果&操作为0,则是2的N次方。 int funcTwo(int x)
{
if (x&(x - 1) == 0)
return 1;
else
return 0;
} int main(array<System::String ^> ^args)
{
int x = 9999;
cout << CountOneSum(x); return 0;
}
基础知识复习(二)——stdafx.h 头文件及x&(x-1)运算的更多相关文章
- 关于找不到stdafx.h头文件问题
代码: #include "stdafx.h" #include "stdlib.h" char* getcharBuffer() { return " ...
- visual c++ 中的stdafx.h头文件的作用
stdafx.h VC工程里面经常见到stdafx.h这个头文件,以前也没有特别注意,但是这个文件用不好经常会出错,所以就GOOGLE了一下,总算是弄清楚了... stdafx的英文全称为:Stand ...
- 关于找不到stdafx.h头文件问题(pass)
代码: #include "stdafx.h" #include "stdlib.h" char* getcharBuffer() { return " ...
- jni.h头文件详解二
作者:左少华 博客:http://blog.csdn.net/shaohuazuo/article/details/42932813 转载请注明出处:http://blog.csdn.net/shao ...
- 【转】 jni.h头文件详解(二)
原文网址:http://blog.csdn.net/shaohuazuo/article/details/42932813 作者:左少华 博客:http://blog.csdn.net/shaohua ...
- linux内核中链表代码分析---list.h头文件分析(二)【转】
转自:http://blog.chinaunix.net/uid-30254565-id-5637598.html linux内核中链表代码分析---list.h头文件分析(二) 16年2月28日16 ...
- 【C语言】中的stdbool.h头文件
C语言中的stdbool.h头文件 一.相关基础知识 二.具体内容 Win7下安装的VS2015中的stdbool.h的位置为: F:\Program Files (x86)\Microsoft Vi ...
- linux内核中链表代码分析---list.h头文件分析(一)【转】
转自:http://blog.chinaunix.net/uid-30254565-id-5637596.html linux内核中链表代码分析---list.h头文件分析(一) 16年2月27日17 ...
- 【转】【Raspberry Pi】Unix NetWork Programming:配置unp.h头文件环境
一.初衷 近期正在做网络计算编程的作业.要求平台为unix/linux,想着Raspberry Pi装的Debian系统也是Linux改的,也应该能够勉强用着,所以就用它来做作业了! 二.说明 先把环 ...
随机推荐
- vim - Highlight unwanted spaces
http://vim.wikia.com/wiki/VimTip396 precondition: set hlsearch" Show all tabs:/\t" Show tr ...
- iOS中文API之NSLayoutconstraint
AutoLayout为开发者提供了一种不同于传统对于UI元素位置指定的布局方法.以前,不论是在IB里拖放,还是在代码中写,每个UIView都会有自己的frame属性,来定义其在当前视图中的位置和尺寸. ...
- EBS R12.2.0启动时报"httpd.pid: Permission denied"错误
启动应用服务: $ /app/oracle/apps/VIS/fs1/inst/apps/VIS_erptest/admin/scripts/adstrtal.sh apps/apps 报出如下错误: ...
- php操作Mysql 以及封装常用的函数 用外连接连接3个表的案例
<?php header("content-type;text/html;charset=utf-8"); //数据库连接define('DB_HOST','localhos ...
- csuoj 1507: 超大型LED显示屏
http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1507 1507: 超大型LED显示屏 时间限制: 1 Sec 内存限制: 128 MB 提交: ...
- 为什么要加 -moz- -webkit- -ms- -o- ?
没有别的,为了兼容早期版本,为了解决CSS3标准正式发布以前的遗留问题.
- asp.net单例模式
目的:保证一个类只有一个单一的实例 好处:1.在资源共享的情况下,避免由多个操作而导致的资源消耗:2.提供可变数目的实例. 标准的单例代码如下: using System; using System. ...
- asp.net 验证正则表达式
基本元字符: . 任意的一个非换行字符 [] 集合匹配,匹配一个[]中出现的字符. 是在多个字符中取一个. () 调整优先级的作用. 还有一个分组的作用 | 或的意思,测试|一下. 注意,或的优先级最 ...
- PDO处理大批量数据的入库
<?php //最东端 东经135度2分30秒 //最西端 东经73度40分 //最南端 北纬3度52分 //最北端 北纬53度33分 //转换为度的单位$dbName = 'txhl';//数 ...
- [课程设计]Scrum 2.0 多鱼点餐系统开发进度(第二阶段项目构思与任务规划)
[课程设计]Scrum 2.0 多鱼点餐系统开发进度 1.团队名称:重案组 2.团队目标:长期经营,积累客户充分准备,伺机而行 3.团队口号:矢志不渝,追求完美 4.团队选题:餐厅到店点餐系统WEB ...