在我的計算機體系結構課程中,我們被要求編寫一個程序,它接受一個'ASCII'字符串作爲函數參數之一。不知道可能有不同的字符串變體,我會像往常一樣聲明一個字符數組,但是如何聲明一個特定於ASCII字符串的字符數組。請提供一個指向ASCII字符串聲明的指針示例。如果提到的內容不清楚,請在下面評論。C中的字符串和ASCII字符串有區別嗎?
0
A
回答
1
C中的每個字符串都是ASCII。標準的ASCII字符是7位寬。你的教授只是想強調你應該使用字節數組來存儲字符串。不像我們說UTF-8
,它可以使用最多4個字節來編碼某些字符。
char *str = "example";
+0
C程序可以處理非ASCII字符串,並且一直這樣做。像'grep'這樣的POSIX命令的大多數現代GNU/Linux實現都是用C語言編寫的,並且使用UTF-8字符串(如果使用utf8語言環境)。而且,ASCII字符是8位寬,但只有7位有效位。高位總是被清除,但它是ASCII編碼的一部分,不僅僅是通過將值存儲在C'char' /'int8_t'數組中引入的填充。 –
相關問題
- 1. 在C#中。字符串和字符串有什麼區別?
- 2. C字符串和C++字符串有什麼區別?
- 3. golang中的[]字符串和...字符串有什麼區別?
- 4. 字符串和字符串C之間的區別#
- 5. 在C#中的區別是什麼:字符串VS字符串
- 6. C++字符的ASCII值到字符串
- 7. 字符串和字符串有什麼區別?
- 8. COM字符串(BSTR)和.NET字符串有什麼區別?
- 9. 字符串插值和字符串串聯之間的區別
- 10. Android中字符串和字符串的區別
- 11. C#中的字符串和字符串之間有什麼區別像Java中的int和Integer嗎?
- 12. 添加字符串文字和字符串對象的區別
- 13. 反轉包含ASCII字符和非ASCII字符的字符串
- 14. 只有ascii字符的字符串php
- 15. 字符串和字符串數組的區別和用法?
- 16. 字符串和Javascript中的字符數組有什麼區別?
- 17. R中的字符串和字符有什麼區別?
- 18. C#字符串ASCII表示
- 19. 將字符串轉換爲ascii和ascii爲字符串
- 20. 將字符串轉換爲ASCII和ASCII字符串
- 21. 字符串X,Y之間的區別;和字符串X,字符串Y;
- 22. 在scala中分割一個字符串與字符和字符串的區別
- 23. 更改ascii代碼和preappend字符在C++中的字符串
- 24. 字符串[]和[字符串]之間的區別
- 25. 聲明字符串和分配字符串之間的區別
- 26. 空字符串和空字符串之間的區別
- 27. std :: string,字符串val和字符串之間的區別val =「」
- 28. 「\(字符串)」和字符串之間的區別?
- 29. 二進制字符串,字節字符串,unicode字符串和普通字符串(str)之間的區別
- 30. Golang中的*字符串和字符串之間有什麼區別?
所有的ASCII字符串都是字符串;該任務可能會說,所以你知道你*不必確保你的程序使用UTF-8字符串或UTF-16字符串或EBCDIC(!)字符串。 – immibis
根據C11規範,您的選擇是'char','wchar_t','char16_t'和'char32_t'。指定'ASCII'字符串意味着一個簡單的'char'數組應該可以工作。 – user3386109