第一天(c基礎)

ZHANG_FD發表於2015-10-27

一個指標佔4個位元組在32位的系統下,在64位的系統下是8位,32位的儲存是4個為一個部分,多了不存而是新建一個再存

int 4個位元組 char 1個位元組 float 4個位元組 double 8個位元組

函式傳遞引數的方式:值傳遞,地址傳遞

#ifndef xxxxxx #define xxxx #endif作用是防止標頭檔案的重複載入

變數:記憶體空間   資料型別:合理分配記憶體空間

int a=123; int b=234; 把a,b值互換,a=a^b;b=a^b;a=a^b;就是異或,一個數被另外一個數異或兩次等於本身

堆空間用malloc和relloc分配空間,最小單位為一個位元組

self是對於本類的,當前方法的呼叫者,super對於父類

oc中沒有私有方法,只有例項方法和類方法,有私有變數


雙向連結串列的結構:

struct Node{

struct Node *prev;

struct Node *next;

}



命令:

mkdir xxxx建立一個目錄

ls 顯示當前目錄下的檔案

open xxxx 開啟一個檔案

touch xxxx.txt建立一個txt檔案

cd xxxx xxxx表示一個目錄名,表示進入這個目錄

rm 刪除檔案或者目錄 rm xxxxx

cp 複製,拷貝和複製不一樣

mv 移動重新命名



c基礎:

計算資料型別取值範圍:char  1位元組,8位

char a =1       為0000 0001

cahr a=-1       為(補碼-反碼加1)1111 1111,是資料位取反。


無符號:1111 1111 (0-255)2^8-1

有符號:-2^7-1~2^7-1

就是該資料型別的位數的次方,n次方和n-1次方


強制轉換是有損轉換,注意資料型別,有時候不能直接賦值。


1.現有int a=129,char=12,把a和b以二進位制輸出(用運算子)

<p><span style="background-color: rgb(240, 240, 240);">#include<stdio.h></span></p><p><span style="background-color: rgb(240, 240, 240);">int main(){</span></p><p></p><pre name="code" class="objc">    int a=129;
    char b=12;
    for (int i=1; i<=8; i++) {
        printf("%d",(a>>(8-i))&0x01);
    }
    for (int m=1; m<=8; m++) {
        printf("%d",(b>>(8-m))&0x01);
    }
    
}



2,用控制語句實現金字塔圖形

                   1

             2    1    2

     3     2     1    2     3

4   3    2      1   2      3    4

#include<stdio.h>


int main()
{
    int a=129;
    char b=12;
    static int n;
    int c;
    scanf("%d",&n);
    for (int i=1; i<=4; i++) {
        for (n=4;n>i ; n--) {
            printf(" ");
        }
        for (n=i ; n>=1; n--) {
            printf("%d",n);
        }
        for (n=2; n<=i; n++) {
            printf("%d",n);
        }
        printf("\n");
    }
        
    
    return 0;

}

    
    



3.用控制語句計算今天是這一年中的第幾天(通用可以輸入任意日期)