お世話になります。
識者の方、下記のC言語におけるReturn文について教えてください。
下記のようなコードに遭遇しました。
C
1unsigned char hoge_func() { 2 int hogehoge_dt = 0; 3 4 hogehoge_dt += 100; 5 hogehoge_dt += 110; 6 hogehoge_dt += 111; 7 hogehoge_dt += 1581; 8 hogehoge_dt += 1711; 9 10 return( (unsigned char)(hogehoge_dt (int)0xffffU) ); 11}
上記関数のreturnですが、intの変数に対して、unsigned char型にキャストしてからreturnいるのは理解できるのですが、その隣の (int)0xffffU は何なのでしょうか?
hogehoge_dtは関数ではなく、ローカル変数です。
このコードはコンパイルOKとして通ると聞いております。
※実行環境が配布されていないため、ソースコードのみ閲覧できる状態です。
このような書き方をした場合、どのように処理されるのでしょうか?
回答2件
あなたの回答
tips
プレビュー