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

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫(kù)
12下一頁(yè)
最近訪問(wèn)板塊 發(fā)新帖
查看: 4508 | 回復(fù): 10
打印 上一主題 下一主題

[C] sizeof 必須找到類型定義,兩個(gè).c一起編譯為啥找不到? [復(fù)制鏈接]

論壇徽章:
2
15-16賽季CBA聯(lián)賽之四川
日期:2016-04-23 14:25:46操作系統(tǒng)版塊每日發(fā)帖之星
日期:2016-05-09 06:20:00
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2012-11-28 11:16 |只看該作者 |倒序?yàn)g覽
本帖最后由 jeasun 于 2012-11-28 11:18 編輯

linux:/home/test # cat ttextern.c
#include <stdio.h>
#include <stdlib.h>

char *aa[] = {"123", "qwe", "asd"};

int strput(char *a)
{
        puts(a);

        return 0;
}

linux:/home/test # cat ttexternmain.c
#include <stdio.h>
#include <stdlib.h>

extern char *aa[];

int main()
{
        printf("%d\n", sizeof(aa));
}

linux:/home/test # gcc ttextern.c ttexternmain.c
ttexternmain.c: In function ‘main’:
ttexternmain.c:8: error: invalid application of ‘sizeof’ to incomplete type ‘char *[]’
linux:/home/test #

論壇徽章:
2
15-16賽季CBA聯(lián)賽之四川
日期:2016-04-23 14:25:46操作系統(tǒng)版塊每日發(fā)帖之星
日期:2016-05-09 06:20:00
2 [報(bào)告]
發(fā)表于 2012-11-28 11:27 |只看該作者
定義和聲明改成char *aa[3];定長(zhǎng)的,告警可以消除,請(qǐng)教各位大神,動(dòng)態(tài)的怎么搞?

論壇徽章:
14
巨蟹座
日期:2013-11-19 14:09:4615-16賽季CBA聯(lián)賽之青島
日期:2016-07-05 12:36:0515-16賽季CBA聯(lián)賽之廣東
日期:2016-06-29 11:45:542015亞冠之全北現(xiàn)代
日期:2015-07-22 08:09:472015年辭舊歲徽章
日期:2015-03-03 16:54:15巨蟹座
日期:2014-12-29 08:22:29射手座
日期:2014-12-05 08:20:39獅子座
日期:2014-11-05 12:33:52寅虎
日期:2014-08-13 09:01:31巳蛇
日期:2014-06-16 16:29:52技術(shù)圖書(shū)徽章
日期:2014-04-15 08:44:01天蝎座
日期:2014-03-11 13:06:45
3 [報(bào)告]
發(fā)表于 2012-11-28 11:51 |只看該作者
聽(tīng)不懂,什么叫“動(dòng)態(tài)的”?

另外,
int strput(char *a)
{
        puts(a);

        return 0;
}
和你的問(wèn)題有什么干系

論壇徽章:
14
巨蟹座
日期:2013-11-19 14:09:4615-16賽季CBA聯(lián)賽之青島
日期:2016-07-05 12:36:0515-16賽季CBA聯(lián)賽之廣東
日期:2016-06-29 11:45:542015亞冠之全北現(xiàn)代
日期:2015-07-22 08:09:472015年辭舊歲徽章
日期:2015-03-03 16:54:15巨蟹座
日期:2014-12-29 08:22:29射手座
日期:2014-12-05 08:20:39獅子座
日期:2014-11-05 12:33:52寅虎
日期:2014-08-13 09:01:31巳蛇
日期:2014-06-16 16:29:52技術(shù)圖書(shū)徽章
日期:2014-04-15 08:44:01天蝎座
日期:2014-03-11 13:06:45
4 [報(bào)告]
發(fā)表于 2012-11-28 12:01 |只看該作者
標(biāo)題中“兩個(gè).c一起編譯為啥找不到? ”
------ 兩個(gè).c怎么一起編譯?我從來(lái)沒(méi)聽(tīng)說(shuō)過(guò)。編譯都是單文件的

論壇徽章:
0
5 [報(bào)告]
發(fā)表于 2012-11-28 13:39 |只看該作者
首先這就不是警告,警告是雖然不太正確但學(xué)是可以編過(guò)去,你這根本就是錯(cuò)誤。你的聲明的信息不完全,只告訴了aa是個(gè)char型指針的數(shù)組,并沒(méi)有說(shuō)明長(zhǎng)度,編譯器自然不知道他的長(zhǎng)度了。像周大所說(shuō)的,編譯的時(shí)候都是分別編譯的,編譯器不會(huì)去上別的文件里去給你找數(shù)組長(zhǎng)度的。

論壇徽章:
2
15-16賽季CBA聯(lián)賽之四川
日期:2016-04-23 14:25:46操作系統(tǒng)版塊每日發(fā)帖之星
日期:2016-05-09 06:20:00
6 [報(bào)告]
發(fā)表于 2012-11-28 15:24 |只看該作者
回復(fù) 3# bruceteen
測(cè)試代碼,抱歉。。。

   

論壇徽章:
2
15-16賽季CBA聯(lián)賽之四川
日期:2016-04-23 14:25:46操作系統(tǒng)版塊每日發(fā)帖之星
日期:2016-05-09 06:20:00
7 [報(bào)告]
發(fā)表于 2012-11-28 15:26 |只看該作者
回復(fù) 5# liwangli1983

恩 是錯(cuò)誤,就是想定義個(gè)
char *aa[] = {"123", "qwe", "asd"};
不指定數(shù)組長(zhǎng)度,添加元素的時(shí)候只管添加就行的。

看來(lái)這種數(shù)組是不支持sizeof的。。。


   

論壇徽章:
2
15-16賽季CBA聯(lián)賽之四川
日期:2016-04-23 14:25:46操作系統(tǒng)版塊每日發(fā)帖之星
日期:2016-05-09 06:20:00
8 [報(bào)告]
發(fā)表于 2012-11-28 15:29 |只看該作者
回復(fù) 4# bruceteen
你的意思是兩個(gè).c,每次編譯時(shí)只編譯成.o,鏈接時(shí)才ld成一個(gè)可執(zhí)行的程序吧。又沒(méi)說(shuō)清楚。。 多多包涵。。

   

論壇徽章:
0
9 [報(bào)告]
發(fā)表于 2012-11-28 15:39 |只看該作者
jeasun 發(fā)表于 2012-11-28 15:26
回復(fù) 5# liwangli1983

恩 是錯(cuò)誤,就是想定義個(gè)


在同一文件中使用sizeof當(dāng)然是沒(méi)問(wèn)題的,編譯器編譯時(shí)看一下定義的位置就知道它的長(zhǎng)度了。但在另一個(gè)文件里聲明時(shí)不指明長(zhǎng)度還想sizeof當(dāng)然是不行的,編譯器在這個(gè)文件中找不到其定義位置,也不會(huì)去別的文件找,所以無(wú)法獲取長(zhǎng)度信息。

論壇徽章:
0
10 [報(bào)告]
發(fā)表于 2012-11-28 18:43 |只看該作者
要理解 sizeof 不是一個(gè)函數(shù),而是一個(gè)被編譯器理解的關(guān)鍵字,不是在鏈接(linking)時(shí)而是在編譯(compiling)時(shí),指示編譯器按類型替換成尺寸數(shù)據(jù)。
您需要登錄后才可以回帖 登錄 | 注冊(cè)

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

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP