資料集
ここはhideyosiの学習帳です。いろいろな資料を集めたり整理したりしています。オイラ用のノートなので間違っていたり未完成だったりしますので信用度は相当低いことをあらかじめご了承くださいませ。
10: 2012-10-23 (火) 06:57:49 ソース バックアップ No.10 を復元して編集 現: 2024-01-06 (土) 22:37:40 ゲスト[htonJexNzZc] ソース 編集
Line 44: Line 44:
|long型|4バイト|かなり大きな整数|-214783648〜214783647|0x00000000〜0xFFFFFFFF|| |long型|4バイト|かなり大きな整数|-214783648〜214783647|0x00000000〜0xFFFFFFFF||
|int型|4バイト|かなり大きな整数|-214783648〜214783647|0x00000000〜0xFFFFFFFF|どうも通常は動作している環境って単位みたい。つまり16bitCPUなら16bit、32bitCPUなら32bitとか(Cコンパイラに依存?)| |int型|4バイト|かなり大きな整数|-214783648〜214783647|0x00000000〜0xFFFFFFFF|どうも通常は動作している環境って単位みたい。つまり16bitCPUなら16bit、32bitCPUなら32bitとか(Cコンパイラに依存?)|
-|float型|4バイト|少数を扱える|少数を扱いたい場合使うらしい||| +|float型|4バイト|少数を扱える|小数を扱いたい場合使うらしい||| 
-|double型|8バイト|より桁数が多い少数||||+|double型|8バイト|より桁数が多い小数||||
|ポインタ型|4バイト|アドレス変数|アドレスを記憶する||| |ポインタ型|4バイト|アドレス変数|アドレスを記憶する|||
Line 53: Line 53:
 float b;  float b;
 char *c;  char *c;
 + 
 a=0x00FF00FF;  a=0x00FF00FF;
 b=0x00FF00FF;  b=0x00FF00FF;
 c=0x00FF00FF;  c=0x00FF00FF;
 + 
 /*この状態で各変数の実際の場所を覗いてみるときっとまったく同じだと思われる*/  /*この状態で各変数の実際の場所を覗いてみるときっとまったく同じだと思われる*/
Line 98: Line 98:
 float d;  float d;
 double e;  double e;
 + 
 aaa = aa + a;    /*同じint同士。足し算も代入もOK。*/  aaa = aa + a;    /*同じint同士。足し算も代入もOK。*/
 + 
 a = b - aa;      /*おいおい! bとaaは型が違うだろ同じ4バイトでも!*/  a = b - aa;      /*おいおい! bとaaは型が違うだろ同じ4バイトでも!*/
 + 
 aaa = e;        /*うわ!aaaとeじゃ型が違うしそもそもバイト数も・・・*/  aaa = e;        /*うわ!aaaとeじゃ型が違うしそもそもバイト数も・・・*/
 + 
 aa = e + d -b;  /*もうなにがなんだか・・・*/  aa = e + d -b;  /*もうなにがなんだか・・・*/
Line 119: Line 119:
 int b;  int b;
 int c:  int c:
 + 
 a = 18;  a = 18;
 b = 38632;  b = 38632;
 + 
 c = a + b;  c = a + b;
Line 134: Line 134:
 int b,ab;  int b,ab;
 int c:  int c:
 + 
 a = 18;  a = 18;
 b = 38632;  b = 38632;
 + 
 ab = (int)a;    /*こうすると、char型aの値(18)はそのままに、int型に変換してくれる*/  ab = (int)a;    /*こうすると、char型aの値(18)はそのままに、int型に変換してくれる*/
 + 
 c = ab + b;    /*当然int同士の足し算。そして結果をint型に代入なので、問題なし!*/  c = ab + b;    /*当然int同士の足し算。そして結果をint型に代入なので、問題なし!*/
Line 150: Line 150:
 int b;  int b;
 int c:  int c:
 + 
 a = 18;  a = 18;
 b = 38632;  b = 38632;
Line 186: Line 186:
 char a;  char a;
 int i;  int i;
- +  
 + 
 for(i = 0x0010; i = 0x0014; i = i+1)  for(i = 0x0010; i = 0x0014; i = i+1)
   {    {
       p = i;        p = i;
       printf("データは %d  16進数だと %x だよーん!\n",*p);        printf("データは %d  16進数だと %x だよーん!\n",*p);
 + 
   }    }
Line 236: Line 236:
 char a;  char a;
 int i;  int i;
- +  
 + 
 for(i = 0x0010; i = 0x0014; i = i+1)  for(i = 0x0010; i = 0x0014; i = i+1)
   {    {
       p = (char *)i;    /* ←ここに注目!*/        p = (char *)i;    /* ←ここに注目!*/
       printf("データは %d  16進数だと %x だよーん!\n",*p);        printf("データは %d  16進数だと %x だよーん!\n",*p);
 + 
   }    }
Line 275: Line 275:
  char z;   char z;
  char c;   char c;
 + 
  z = 0x44;   z = 0x44;
  c = 0x22;   c = 0x22;
 + 
  c = c + z;   c = c + z;
 + 
  printf("data is %x\n",c);   printf("data is %x\n",c);
Line 288: Line 288:
  int i;   int i;
 + 
  char z;   char z;
  char c;   char c;
 + 
  z = 0x44;   z = 0x44;
  c = 0x22;   c = 0x22;
 + 
  i = c + z;   i = c + z;
 + 
  printf("data is %x\n",i);   printf("data is %x\n",i);
Line 327: Line 327:
  char c;   char c;
  int i;   int i;
 + 
  c = 0xf3;   c = 0xf3;
  i = 0x12;   i = 0x12;
 + 
  c = c + i;   c = c + i;
 + 
  printf("data is 0x%X\n",c);   printf("data is 0x%X\n",c);
Line 373: Line 373:
 int main(void){  int main(void){
 + 
  char *p;   char *p;
  char c;   char c;
 + 
  c = 0x33;   c = 0x33;
  p = c;   p = c;
 + 
  printf("data is 0x%X\n",p);   printf("data is 0x%X\n",p);
 + 
 }  }
Line 388: Line 388:
 int main(void){  int main(void){
 + 
  char *p;   char *p;
  char c;   char c;
 + 
  c = 0x33;   c = 0x33;
  p = (char *)c;   p = (char *)c;
 + 
  printf("data is 0x%X\n",p);   printf("data is 0x%X\n",p);
 + 
 }  }


トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   ページ新規作成 全ページ一覧 単語検索 最新ページの一覧   ヘルプ   最新ページのRSS 1.0 最新ページのRSS 2.0 最新ページのRSS Atom
Counter: 59306, today: 1, yesterday: 0