我正在使用 scanf
读取字符串并将其放入 char*
中。
scanf("%s", &str);
printf("%c",str);
它工作正常,但我不知道如何像使用 char[] 那样访问该字符串中的特定字符。我一直在尝试增加地址:
str += 1;
我已经搞乱了一点,但我得到的只是第一个字符或段错误或总线错误。是否可以使用该字符串而不复制到 char[]
中?
最佳答案
1)
It works fine but I don't know how to access a specific character in that string as I would with a char[]
只需使用 [] 取消引用指针数组并访问位置“i”处的字符
str[i]
2)
I have been messing around a bit but all I get is the first character or segfaults or bus errors
是的 - 数组名本身是指向字符串第一个字符的指针
关于c - 在 C 中访问字符指针字符串中的特定字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24591527/