【C/C++學院】0725-記憶體補碼分析/補碼原碼實戰/列印整數位元據/靜態庫說明

來源:互聯網
上載者:User

標籤:

【送給在路上的程式員】

對於一個開發人員而言,能夠勝任系統中任意一個模組的開發是其核心價值的體現。

對於一個架構師而言,掌握各種語言的優勢並可以運用到系統中,由此簡化系統的開發,是其架構生涯的第一步。

對於一個Team Dev而言,能在短期內開發出使用者滿意的軟體系統是起核心競爭力的體現。

每一個程式員都不能固步自封,要多接觸新的行業,新的技術領域,突破自我。

記憶體補碼分析
#include<stdio.h>#include<stdlib.h>void main3(){//printf不會進行資料類型轉換printf("%d", (int)10.3);//printf不管你是什麼類型,按照%d ,%f解析資料printf("\n%f", (float)10);getchar();}void  main4(){int num = 100;printf("%p", &num);//不同的解釋方式就有不同的解釋結果getchar();}void   main5(){char ch = 1,ch1='1';//字元與編號的區別printf("%d,%d", ch,ch1);getchar();}void   main6(){//解析的時候,與資料的長度有關係unsigned short num = 65535+1;printf("劉寧波有%d元", num);//  99// 100getchar();}void   main7(){//補碼,電腦儲存資料的方式short num = -1;printf("%d", num);printf("\n%u", num);//%u 0-正整數getchar();}
補碼原碼實戰
#include<stdio.h>#include<stdlib.h>#include<limits.h>void main10(){int x = 1;int y = -1;//補碼printf("x=%p,y=%p", &x, &y);system("pause");}void  main123(){//int  unsigned int  4個位元組32位//有符號,0代表正數,1代表負數//0111 1111 1111 1111 1111 1111 1111 1111//1111 1111 1111 1111 1111 1111 1111 1111//無符號,正數,全部都是資料printf("%d,%d", INT_MAX, INT_MIN);//%d只能顯示INT_MIN->INT_MAXprintf("\n%d,%d", INT_MAX+1, INT_MIN-1);printf("\n%u,%u", UINT_MAX, 0);printf("\n%u,%u", UINT_MAX+1, 0-1);//%u   0->UINT_MAXsystem("pause");}void main1234(){int x = 4294967295;int y = -1;//1111 1111 1111 1111 1111 1111 1111 1111記憶體的儲存方式//無符號,沒有符號位,全部都是資料 4294967295//0000 0000 0000 0000  0000 0000 0000 0001 1原碼//1000 0000 0000 0000  0000 0000 0000 0001 -1的原碼//1111 1111 1111 1111  1111 1111 1111 1110 -1的反碼//1111 1111 1111 1111  1111 1111 1111 1111 -1的補碼printf("%d,%u", x,x);printf("\n%d,%u", y, y);getchar();}void  main(){unsigned int num = -1;////1111 1111 1111 1111 1111 1111 1111 1111記憶體的儲存方式printf("%d,%u", num, num);system("pause");}

列印整數位元據
#define  _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<stdlib.h>void main1(){int num;scanf("%d", &num);printf("num=%d,&num=%p\n", num,&num);int  data = 1 << 31;//構建一個相與的資料for (int i = 1; i <= 32; i++){int temp = num&data;//求出首位相與if (temp == 0){putchar('0');}else{putchar('1');}num <<= 1;if (i % 4 == 0){printf(" ");}}system("pause");}void main(){int num;scanf("%d", &num);printf("num=%d,&num=%p\n", num, &num);int  data = 1 << 31;//構建一個相與的資料if (num < 0){num = ~num + 1;//求原碼   num = num | data;//設定符號位   }for (int i = 1; i <= 32; i++){int temp = num&data;//求出首位相與if (temp == 0){putchar('0');}else{putchar('1');}num <<= 1;if (i % 4 == 0){printf(" ");}}system("pause");}

靜態庫說明

1.屬性添加 xxx.lib 連結 或者代碼方式實現 #pragma comment(lib, "detours.lib")

2.並且把xxx.lib 放到源碼目錄下


|=========== 吳英強CSDN部落格專欄==============|

|== C/C++學院 專欄文章的內容(不定期更新)===|

|== linux驅動開發 探索linux底層的奧秘 ==========|

|== Java基礎學習篇 掌握java語言的基礎知識=====|

|====== 每天進步一點點,健康快樂每一天 ========|




著作權聲明:歡迎轉載,希望在您轉載的同時,添加原文地址,謝謝配合!

【C/C++學院】0725-記憶體補碼分析/補碼原碼實戰/列印整數位元據/靜態庫說明

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.