char a然後我scanfs ,a 怎麼就不行呢

2022-08-02 01:50:18 字數 2600 閱讀 2117

1樓:

scanf("%s",a[1]) 不行,因為%s要求引數是字元變數的首地址。讀入到從那個地址開始的單元裡去

scanf("%s",&a[1]); 可以的。(你從 a 的第二個單元用起)。

printf("%s",&a[1]); 可以輸出你剛打入的字串。

這時若 printf("%s",a); 語法沒錯,但因為 a[0] 裡沒東西(含不確定的資訊),所以你也許可以列印,也許不能列印。

正確用法是

scanf("%s",&a[0]); 或

scanf("%s",a);

2樓:

char *a[100];

這樣定義 a 是字元指標陣列

其中每個元素 比如 a[1] 都是一個字元型指標但是這時候並沒有指向有效的地址

直接 scanf("%s",a[1]) 自然不行了char *a[100];

char buffer[100];

a[1] = buffer;

scanf("%s",a[1]);

這樣就可以了

char *a[100];

a[1] = (char *)malloc(100);

scanf("%s",a[1]);

這樣也行

3樓:匿名使用者

格式對應錯誤:scanf裡逗號後應為地址,而a[1]是變數而非地址屬性。再者,前面的%s也不相對應

兩種正確改正方法:

第一種:把%s改為%c並且要把a[1]改為&a[1]第二種:僅需把a[1]改為a

(希望對您有幫助,謝謝)

4樓:匿名使用者

因為你分配了100個指標,這些指標都是沒有初始化的,也就是沒有指向的地址,所以當你scanf的時候,根本就沒有給出地址,或者說給出了一個0地址,所以肯定要出錯

5樓:匿名使用者

誰說scanf("%s", &a[1]);不行啊?我經常用的,有圖有真相

6樓:匿名使用者

a[1]不是地址

如果一定要從陣列第二個元素開始:

scanf("%s", &a[1]);

printf("%s\n", &a[1]);

不然可以用:

scanf("%s", a); // 等同於scanf("%s", &a[0]);

printf("%s\n", a);

7樓:有引擎的蝸牛

只輸入一個用%c,用scanf("%s",a);或者for(int i=0;i<100;i++);scanf("%c",a[i]);最好用gets(a)

8樓:匿名使用者

或者把%s改為%c就行了

語法錯誤 char a[100]; scanf_s(「%s」,a); 一直不知道問題所在,求助

9樓:匿名使用者

這個錯誤資訊說的很明確呀,你的scanf_s的呼叫還缺少一個引數(沒有傳遞足夠的引數)。scanf_s是scanf的安全版本,需要第三個表示陣列長度的引數,所以正確的呼叫應該是:

scanf_s("%s", a, 100);

10樓:gta小雞

scanf_s在讀入字串時需要提供緩衝區長度,a後應該還有一個參數列示a的長度。

如果我定義了一個char a[100] ; ,那麼我scanf的時候還要不要加&去地址呢?

11樓:匿名使用者

字串陣列本身就包含了地址,用scanf的時候不用加&符號scanf("%s",ss) ;

就可以了

注意輸入的時候不能敲空格喲

如果要輸入空格的話,用gets()更好

希望對你有幫助

12樓:

加 &,寫

不加, 寫 ss -- scanf("%s",ss);

13樓:啊想說就說

首先你要明白。。陣列的儲存方式。。陣列名字代表著什麼..

對於一個一維陣列..他的陣列名代表著該陣列的存放的地址.換句話說他就是一個指標..指向存放陣列中元素的第一個元素的地址..

知道了..ss是一個指標..scanf的時候就不用加嘍

c語言問題,利用scanf%s,a[i]儲存了字串,前面定義a[100][100],別的都沒問題 10

14樓:阿爾邁凡

你要求a的什麼長度?

你定義a[100][100]是一個二維陣列字串的話就是a[0-99]

求長度就是strlen(a[0]);或者strlen(a[1]);等等

還是說你想求有多少個字串?

如果是求a中有多少字串的話是不能strlen(a)這樣來用的strlen的定義為

size_t strlen(const char *s);

引數是一個字元指標而變數a是一個char (相當於一個指標的指標,但並不是一個指標,只是為了說明)

所以是不能這樣用的

同事叫我幫忙,然後另同事轉告我,我說不幫,然後同事跟他說我很忙,那個同事聽到後,就發脾氣了

這種人不用給他好臉色看 沒有人必須要幫另一個人 完全是看自願的 強求也沒用不幫就是不幫 他自己心裡不平衡 不用理他 不可理喻的一個人。你求別人幫忙,別人沒時間,你就發脾氣,這種人最好少接觸 他是怎樣的一個人你不必在乎,他有求於別人還託別跟你說,一點禮貌都沒有,這種人也沒有必要去幫他,更何況他還好凶你...

以前男生喜歡過我然後我不理他,然後現在他有物件了我發現他

我認為,這種人不值得你愛。首先,要以學業為重,你不能一心二用。其次,他既然有了女朋友,那麼表明他對你並是真心的。所以,你應該忘記他。你喜歡他?看來是這樣,不能接受他有物件這個事實是嗎?只能說你活該,裝什麼高傲 是你心裡有他把 他都有物件了 你還管他看不看你幹嘛 他不值得你去喜歡,都有物件了,還一心二...

我讀書在無錫然後網上報考成功繳費然後我是南京人我可以在南京考試嗎換地區

你好。這要看你自己的意願了,你可以轉南京也可以轉南通,個人建議轉南京的工作所在地。異地轉移社保流程為 參保人在原參保地提供身份證 社保編號,到所在的社保中心列印 基本養老保險參保繳費憑證 到新參保地社保機構辦理轉移手續即可。後臺所有手續由兩地社保經辦機構之間處理。1 參保人員在新就業地按規定建立基本...