回覆列表
  • 1 # 學好玩

    你怎麼這麼確定Windows是用c寫的呢?我見過一部分原始碼,其實很大一部分是asm,還有vb。但是大小寫不敏感這個,也許是為了相容dos作業系統吧。

  • 2 # 此使用者名稱可以用

    想象一下普通話和方言,或者漢語和外語,如果表達的是相同的意思,那麼就必須用相同的意思來表達,Windows作業系統本身對檔名大小寫不敏感,那麼在其中執行的程式也必須大小寫不敏感,無論用什麼語言實現——不然就會給使用者帶來困擾,從商業推廣角度看會如何就清楚了。

  • 3 # 夜上星星

    程式設計師讓它敏感就敏感,程式設計師讓它不敏感就不敏感。

    比如對每一個字元都這樣操作:

    if(c=="e"||c=="E")

    {

    //執行功能程式

    }

    來判斷是不是字母E,不區分大小寫。

  • 4 # ymismy

    c是語言,本身是區別大小寫的。Windows是執行檔案,這是兩回事。而編譯成執行檔案後的Windows對檔名大小寫不作區別,主要是為了相容以前的dos。Windows的一部分就是的DOS。

  • 5 # 工號1024

    Windows上的區分大小寫實際上是透過應用開啟檔案的方式實現的。NTFS是區分大小寫的檔案系統,能夠順暢的儲存檔案,相同的檔名僅在同一目錄中按大小寫做區分。

    在Windows上,最終是透過CreateFile API來開啟所有檔案,如果FILE_FLAG_POSIX_SEMANTICS flag被傳遞做呼叫,那麼會根據具體的名稱匹配來開啟檔案;如果FILE_FLAG_POSIX_SEMANTICS未被傳遞,那麼檔案系統會開啟不做大小寫區分的檔案,並同時開啟一個名稱匹配的檔案。如果有多個,就不去明確哪個是實際被開啟的。

    Windows上大多數C和C ++執行實現都不對接於上述機制,並且從不使用flag,因此要訪問區分大小寫行為的唯一方法是直接使用Windows API。

  • 中秋節和大豐收的關聯?
  • 那些“小三”最後的結局都怎樣了?