1樓:小黑哎啊
你這**錯了。
能執行但是,不建議這樣寫,賣蠢殲因為有歧義。
s->字串(char)佔位符。
c->單個字元(char)佔位符。
char a;//單個字元。
char s[10];/字串。
scanf("%c",&a);/輸入單個字元。
scanf("%s",s);/輸入字串。
printf("%c",a);/輸出檔鬥單個字元。
printf("%s",s);/輸出中衝字串。
2樓:帳號已登出
編譯器只檢查語法邏輯的問題。對於數學邏輯問題殲沒唯是氏培不會報錯的。
語法正確,可以編譯並執行,但不能察穗保證執行結果是正確的。
3樓:我和芯萪娘貼貼
把"%s"換成"%c"
如果換成"%c"後,出現"輸入乙個字元,第二個輸入慧含嫌沒輸入也前手繼續執老衝行"情況的話,就在scanf後面加一行fflush(stdin);
4樓:yx陳子昂
char a;
只有乙個位元組的內陪豎存空間。
scanf("%s",&a)
這裡其實溢位了,應該用。
scanf("蘆源大 %c",&a);
注意有乙個空裂返格。
5樓:神官0麥依
你覺得**有問題?
我看了你這裡的**沒問題可以執行。
6樓:匿名使用者
你都找到問題了還要別人解答幹嘛?
編譯執行失敗為啥?
7樓:紫薇參星
這個c語言程式有兩處問題。
一strcpy和strcat函式在標頭檔案中,需要包含進來。
二給字元陣列s1和s2賦值的方法不對。
完整的程式如下(改動的地方見註釋)
#include ""
#include ""//這裡包含標頭檔案。
void main()
char s1=abcdef",s2=12345f";/這裡給字元陣列賦字串。
char s3[50];
strcpy(s3,s1);
strcat(s3,s2);
printf("%s",s3);
c++編譯器報警告怎麼辦?
8樓:小採姐姐
警告解決技巧:
典型的指標使用錯誤,定義了乙個指標變數,只能用來儲存位址,如果這個位址所指向的空間不是系統分配給它的,那麼你對這塊襪頃記憶體的賦值是非法的,就好比「所作所為」。
三重迴圈是因為非法修改了至少 3*3*5 = 45 位元組的記憶體值,要知道以前 windows 98 的藍屏大部分是由於非法修改記憶體引起的。
情況分析。1、keys1的存在性。雖然在這裡執行沒有出錯,但程式是錯的。使用了不是由你也不是由系統為分配的儲存空間。
2、char** keys1,為乙個指標租好虧分配了儲存空間。keys這個儲存空間不是你應當存取的,你的程式裡面沒有宣告你對這些儲存弊神空間的擁有性。
如何用c寫編譯器,如何用c寫一個編譯器
先學編譯原理。然後根據步驟,1 處理預編譯 2 詞法分析 3 語法分析 4 語義分析 5 中間 轉換 6 二進位制 生成。簡單起見,不需要考慮優化。初期可以不需要支援太多語法。怎樣去寫一個編譯器 用c語言寫c語言編譯器 需 這個需要考慮到很多的問題 各種錯誤的型別 以及可能出現的情況 這個可以先去看...
急求c語言編譯器本人是新手!現在網上的編譯器眾多,種類繁多,真不知道選哪款最好是中文的
vc 6.0就很好用啊。我新手入門就用的它啊。如果不會用可以給我發資訊。我可以給你解答。給你gcc你會用麼?還是老實的用vc吧,編譯器是次要的,關鍵是能寫出好程式才行。原本進來是準備拿分的,看了你寫的內容真是讓人忍不住說你 tc,c free,vc 都還不錯啊。另外還有pgcc,gcc,pathsc...
跪求C語言編輯器和編譯器,加急本人新手,哪位大神肯幫下忙
vs2008,vc6.0,codeblock,好多呢。不過最好根據你的開發環境選擇相應的ide。dev c 不錯的c c 編譯器。c free就可以了啊,我們初學c語言時就是使用這個 新手建議用codeblocks這裡還有使用教程 希望對內 你有幫助哈容 新手先用vc好一點,c語言新手 哪位大神幫個...