相关疑难解决方法(0)

C中的指针:何时使用&符号和星号?

我刚开始用指针,我有点困惑.我知道&一个变量的地址,它*可以在指针变量前面使用,以获取指针指向的对象的值.但是当您使用数组,字符串或使用变量的指针副本调用函数时,情况会有所不同.在所有这些内部很难看到逻辑模式.

什么时候应该使用&*

c pointers

272
推荐指数
8
解决办法
19万
查看次数

用scanf读取字符串

我对某些事情有点困惑.我的印象是,读取C字符串的正确方法与之scanf()相符

(不要介意可能的缓冲区溢出,这只是一个简单的例子)

char string[256];
scanf( "%s" , string );
Run Code Online (Sandbox Code Playgroud)

但是,以下似乎也有效,

scanf( "%s" , &string );
Run Code Online (Sandbox Code Playgroud)

这只是我的编译器(gcc),纯粹的运气还是别的什么?

c scanf

136
推荐指数
1
解决办法
50万
查看次数

为什么scanf不需要字符串的&符号,并且在printf(在C中)也可以正常工作?

我现在正在学习C中的字符串.

如何使用scanf来获取你可以做的字符串

scanf("%s",str1);
Run Code Online (Sandbox Code Playgroud)

而对于printf,你可以做到

printf("The string is %s\n", str1);
Run Code Online (Sandbox Code Playgroud)

我理解,对于scanf来说,这是因为字符串只是一个字符数组,它是一个指针,但是对于printf,你怎么能像变换int或float一样放置变量名?

c string printf pointers scanf

8
推荐指数
2
解决办法
1万
查看次数

标签 统计

c ×3

pointers ×2

scanf ×2

printf ×1

string ×1