2015年5月28日木曜日

プリミティブ型の最大値を超えた場合のstatic_castの動作(C++)

プリミティブ型の最大値を超えている場合、static_cast はどのように動作するか。
//
// static_cast.cpp
// CplusplusPractice
//
// Created by masai on 2015/05/28.
// Copyright (c) 2015年 masai. All rights reserved.
//
#include <iostream>
using namespace std;
int main(int argc, char* argv[]){
cout << static_cast<unsigned short>(-1) << endl;
cout << static_cast<unsigned short>(0) << endl;
cout << static_cast<unsigned short>(1) << endl;
cout << static_cast<unsigned short>(65535) << endl;
cout << static_cast<unsigned short>(65536) << endl;
cout << static_cast<unsigned short>(65537) << endl;
}
view raw short_cast.cpp hosted with ❤ by GitHub
出力は以下のようになる。
65535
0
1
65535
0
1

0 件のコメント:

コメントを投稿