[英]How can a string literal be used as other lvalues?
字符串文字是左值。
可以使用左值:
作為地址運算符的操作數(除非左值指定位字段或已聲明為寄存器)。
作為前/后遞增和遞減運算符的操作數。
作為成員訪問(點)運算符的左側操作數。
作為賦值和復合賦值運算符的左側操作數。
作為...(任何可以用作值的值,但我想列出)
我想知道如何在C程序中將字符串文字用作上述運算符的操作數?
謝謝。
項目符號2和4需要可修改的左值 ,不包括數組。 字符串文字是數組,因此它們不是可修改的左值。
第一個是OK,允許&"hello"
,盡管這是不常見的用法。
第三個是的左側.
必須具有struct類型,而字符串文字則沒有。 但是,請注意的左側操作數.
實際上並不需要是左值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.