亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
12下一頁
最近訪問板塊 發(fā)新帖
查看: 4337 | 回復(fù): 14
打印 上一主題 下一主題

[C] 初學(xué)c,請問:anytype *p_str, p_str++與 *p_str++有啥不同呢? [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2010-08-13 22:29 |只看該作者 |倒序瀏覽
本帖最后由 cu養(yǎng)豬小能手 于 2010-08-13 22:55 編輯

在一段小代碼里面更換二者結(jié)果一樣。
  1. #include "stdio.h"

  2. main()  {

  3.     char *p_str = "just to see if it works";

  4.     for(;*p_str != '\0';      p_str++  )
  5.         printf("%c\n",*p_str);

  6.     return 0;
  7. }
復(fù)制代碼
  1. main()  {

  2.     char *p_str = "just to see if it works";

  3.     for(;*p_str != '\0';      *p_str++   )
  4.         printf("%c\n",*p_str);

  5.     return 0;
復(fù)制代碼
純粹是興趣,不是搶飯碗的,也沒能力搶啊。

論壇徽章:
27
處女座
日期:2016-04-18 14:00:4515-16賽季CBA聯(lián)賽之福建
日期:2023-03-31 15:54:2315-16賽季CBA聯(lián)賽之深圳
日期:2020-06-02 10:10:5015-16賽季CBA聯(lián)賽之廣夏
日期:2019-07-23 16:59:452016科比退役紀(jì)念章
日期:2019-06-26 16:59:1315-16賽季CBA聯(lián)賽之天津
日期:2019-05-28 14:25:1915-16賽季CBA聯(lián)賽之青島
日期:2019-05-16 10:14:082016科比退役紀(jì)念章
日期:2019-01-11 14:44:062016科比退役紀(jì)念章
日期:2018-07-18 16:17:4015-16賽季CBA聯(lián)賽之上海
日期:2017-08-22 18:18:5515-16賽季CBA聯(lián)賽之江蘇
日期:2017-08-04 17:00:4715-16賽季CBA聯(lián)賽之佛山
日期:2017-02-20 18:21:13
2 [報告]
發(fā)表于 2010-08-13 22:37 |只看該作者
p_str++與 *p_str++ 結(jié)果一樣?

論壇徽章:
27
處女座
日期:2016-04-18 14:00:4515-16賽季CBA聯(lián)賽之福建
日期:2023-03-31 15:54:2315-16賽季CBA聯(lián)賽之深圳
日期:2020-06-02 10:10:5015-16賽季CBA聯(lián)賽之廣夏
日期:2019-07-23 16:59:452016科比退役紀(jì)念章
日期:2019-06-26 16:59:1315-16賽季CBA聯(lián)賽之天津
日期:2019-05-28 14:25:1915-16賽季CBA聯(lián)賽之青島
日期:2019-05-16 10:14:082016科比退役紀(jì)念章
日期:2019-01-11 14:44:062016科比退役紀(jì)念章
日期:2018-07-18 16:17:4015-16賽季CBA聯(lián)賽之上海
日期:2017-08-22 18:18:5515-16賽季CBA聯(lián)賽之江蘇
日期:2017-08-04 17:00:4715-16賽季CBA聯(lián)賽之佛山
日期:2017-02-20 18:21:13
3 [報告]
發(fā)表于 2010-08-13 22:41 |只看該作者
因為“++”的優(yōu)先級比“*"要高,所以結(jié)果式相同的。

就算不考慮優(yōu)先級的問題。
*ptr++  因為++返回的值還是原來的*ptr
*(ptr++)因為返回的ptr的地址,所以取值還是相同的。

論壇徽章:
3
巳蛇
日期:2013-10-03 10:41:48申猴
日期:2014-07-29 16:12:04天蝎座
日期:2014-08-21 09:24:52
4 [報告]
發(fā)表于 2010-08-13 22:46 |只看該作者
char *p;

p++ 的值是一個地址
*p++的值是從這個地址存儲的東西。

論壇徽章:
0
5 [報告]
發(fā)表于 2010-08-13 22:52 |只看該作者
回復(fù) 2# evaspring


    在for里面把p_str改成*p_str結(jié)果是一樣的

論壇徽章:
0
6 [報告]
發(fā)表于 2010-08-13 22:58 |只看該作者
回復(fù) 4# pandaiam


    嗯,這個我也知道,只是因為在上面兩段代碼的for的第三個分號前  p_str 和  *p_str效果一樣,感到不解

論壇徽章:
0
7 [報告]
發(fā)表于 2010-08-13 23:04 |只看該作者
回復(fù) 6# cu養(yǎng)豬小能手


    for循環(huán)里用到的只是 指針的移動,并沒有用到指針具體指向的值,*p_str++雖然有取值,但是作為for語句的第三個表達式,其表達式的結(jié)果是p_str指向的值,但循環(huán)中沒用到這個值。就是這樣的。。。

論壇徽章:
0
8 [報告]
發(fā)表于 2010-08-13 23:04 |只看該作者
因為“++”的優(yōu)先級比“*"要高,所以結(jié)果式相同的。

就算不考慮優(yōu)先級的問題。
*ptr++  因為++返回的值還是原來的*ptr
*(ptr++)因為返回的ptr的地址,所以取值還是相同的。
回復(fù) 3# evaspring

這個    *ptr++返回的不是原來的  *ptr了呃。。。如果  char *ptr = "just do it"; 經(jīng)過若干個 *ptr++后,printf("%s",ptr)打印出來的就不再是  just do it 了。

論壇徽章:
3
巳蛇
日期:2013-10-03 10:41:48申猴
日期:2014-07-29 16:12:04天蝎座
日期:2014-08-21 09:24:52
9 [報告]
發(fā)表于 2010-08-13 23:06 |只看該作者
這里寫成 p_str++ 比較好,意思也容易明白。

論壇徽章:
0
10 [報告]
發(fā)表于 2010-08-13 23:07 |只看該作者
回復(fù) 7# liuyuanyang


    謝謝啦,應(yīng)該是這樣了。怪不得有個這樣的提示:
test.c:13:1: 警告:返回類型默認(rèn)為‘int’
test.c: 在函數(shù)‘main’中:
test.c:17:25: 警告:計算出的值未被使用
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP