プロが教えるわが家の防犯対策術!

C言語の問題なのですか、作成したのですが内容がわからないです。
コードをわかりやすく解説していただけると嬉しいです。

#include <stdio.h>
void printBinary(unsigned char num)
{
int i ;
/*①上位ビットから順に表示する*/
for(i = 7 ; i >= 0; i--)
{
/*②シフトとマスクを使用しています。*/
printf("%d", (num>>i) &0x01 );
}
printf("\n");
}

int main(void)
{
unsigned char num1 = 0xD2;/*11010010*/
unsigned char num2 = 0x5E;/*01011110*/

printf("0xD2 : ");
printBinary(num1);

printf("0x5E : ");
printBinary(num2);

return 0;
}

A 回答 (6件)

コピペさせてもらったが意味が解らんということ?



>/*①上位ビットから順に表示する*/

これです。必要十分な説明になってる。
    • good
    • 0

他人に作ってもらったコードで不義理働いて解説してくれなくなったんなら仕方ないんじゃないですかね?


貰ったコードの一部を課題に合わせて書き換えるくらいの知識はあるんですから、もう少し頑張りましょう。

https://detail.chiebukuro.yahoo.co.jp/qa/questio …
https://detail.chiebukuro.yahoo.co.jp/qa/questio …
    • good
    • 0
    • good
    • 0

> 作成したのですが内容がわからないです。



え???
プログラミングと言うのは・・・。

1.プログラムにやらせたいことがある。
 これはある入力を与えるとある結果が得られるというもの。

2.この「ある入力を与えるとある結果が得られる」ためには、「入力された内容をどのようにして加工すれば求める出力が有られるかの加工手順を具体的に考える」ことを行う。
 これはプログラミングに使用する言語ではなく、この設計を行う人が日常使用している自然言語(←多くの日本人の場合は日本語)で行う。

3.考えた加工手順を使用するプログラミング言語に翻訳する。

ということです。
つまり自身が作成したプログラムソースを読んで意味がわからないということはあり得ません。
そのあり得ないことが起きている質問者様の現状は起きていること自体がウソであるか、プログラミングというものをよほど誤って理解されているかのどちらだと考えます。

参考まで。
    • good
    • 1

意味も分からず作成することはできません



『C言語の問題なのですか、作成したのですが内容がわからないです』
ですからこの言葉には嘘がありますね

あなたの要求は1から全部教えろとうことのようで
何らかの課題と思える内容から、その行為があなたのためになるとは思えません

ので概略だけ

これは事前に定義されている定数を2進数で表示させるためのものです

この説明をもとに自身で解決してください
    • good
    • 0

自分で作成したのに、何を作ったのかもわからないのですか?

    • good
    • 3

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています