几个小问题。
预处理器标识#error的目的是什么?
_rotr(int, int) 这个函数是什么?
%n,%Ns,%Fs分别是什么?
[解决办法]
#include <stdio.h>
#include <stdlib.h>
//#define AA 3
#ifndef AA
#error no AA is defined.....
#endif
int main()
{
//printf( "%d\n ",AA);
system( "PAUSE ");
return 0;
}
#include <iostream>
#include <bitset>
#include <cstdlib>
using namespace std;
const static int INT_LEN=sizeof(unsigned int)*8;
int main()
{
unsigned int a=5,b=7;
cout < <bitset <INT_LEN> (a) < <endl;
cout < <bitset <INT_LEN> (b) < <endl;
cout < <bitset <INT_LEN> (_rotl(a,5)) < <endl;//字节左转
cout < <bitset <INT_LEN> (_rotr(b,2)) < <endl;//字节右转
system( "PAUSE ");
return 0;
}
[解决办法]
预处理器标识#error的目的是什么?
//////////////////////////////
在编译时,在编译路径上面有#error会在编译器的输出信息上面打印出#error后面的消息
[解决办法]
预处理器标识#error的目的是什么?
在满足给定条件下,
输出错误提示。
通常用于一些复杂问题的分支处理过程中,
便于查找错误 ~
[解决办法]
程序中往往有很多的预处理指令
#ifdef XXX
...
#else
#endif
当程序比较大时,往往有些宏定义是在外部指定的(如makefile),或是在系统头文件中指定的,当你不太确定当前是否定义了 XXX 时,就可以改成如下这样进行编译:
#ifdef XXX
...
#error "XXX has been defined "
#else
#endif
这样,如果编译时出现错误,输出了XXX has been defined,表明宏XXX已经被定义了。