Kay*_*Kay 2 c arrays indexing printf character
#include <stdio.h>
int main(void){
char x [] = "hello world.";
printf("%s \n", &x[0]);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
打印出上面的代码 "hello world."
我怎么打印出来的"h"?访问不应该x[0]确保这一点吗?
你应该做:
printf("%c \n", x[0]);
Run Code Online (Sandbox Code Playgroud)
打印char 的格式说明符是c.所以要使用的格式字符串是%c.
这间位于有效的索引访问数组元素i,你需要说array_name[i].你不应该使用&.使用&将为您提供元素的地址.
访问不应该
x[0]确保这一点吗?
不,因为&in&x[0]获取字符串的第一个元素的地址(所以它相当于只使用x.
%s 将输出字符串中的所有字符看到字符串末尾的空字符(这对于文字字符串是隐式的)。
为了打印出一个字符而不是整个字符串,请改用字符格式说明符%c。
请注意,这printf("%s \n", x[0]);将是无效的,因为x[0]它是类型char并且%s需要一个char *.
| 归档时间: |
|
| 查看次数: |
30153 次 |
| 最近记录: |