之前偶然間看到一個代碼
c = “/4/3/2/1/5/6”[i]
雙引號部分可以看作一個陣列
預期效果I=1 則c=4
之前看大佬達到預期 自己怎么都打不到預期
uj5u.com熱心網友回復:
理論上可以的,可能不同的編譯器處理不同吧,LZ的得到什么樣的結果,和預期哪里不同?“/4/3/2/1/5/6”是個字串常量指標,指標[i]就是取第i個元素,等價于
const char *p = "/4/3/2/1/5/6";
c = p[1];
uj5u.com熱心網友回復:
編譯器將/也算做其中的一個元素uj5u.com熱心網友回復:
那不就是正確的嗎?i=1 則c=4,i是0則c是/,陣列的下標是從0開始的。也就是說 / 也是其中的元素,因為它也是字串中的一個字符啊。轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/122302.html
標籤:C語言
