在c语言中如何通过索引从字符串中获取字符?
但是我想要的是第二个数字,即在c语言中如何通过索引从字符串中获取字符?,c,string,C,String,但是我想要的是第二个数字,即4。如何修复它?您需要为printfs指定格式字符串。第一个需要字符串格式“%s”,第二个需要单个字符“%c”。您可以在printf()的格式化字符串中找到有关所用格式的所有详细信息 #包括 int main(){ char-str[11]; int-num; scanf(“%s%i”、&str、&num); printf(“您键入了%s和%i\n”,str,num); 如果(num==0) { printf(“%s”,str); } 其他的 { printf(“%c
4
。如何修复它?您需要为printfs指定格式字符串。第一个需要字符串格式“%s
”,第二个需要单个字符“%c
”。您可以在printf()
的格式化字符串中找到有关所用格式的所有详细信息
#包括
int main(){
char-str[11];
int-num;
scanf(“%s%i”、&str、&num);
printf(“您键入了%s和%i\n”,str,num);
如果(num==0)
{
printf(“%s”,str);
}
其他的
{
printf(“%c”,str[num]);
}
返回0;
}
您需要为printfs指定格式字符串。第一个需要字符串格式“%s
”,第二个需要单个字符“%c
”。您可以在printf()
的格式化字符串中找到有关所用格式的所有详细信息
#包括
int main(){
char-str[11];
int-num;
scanf(“%s%i”、&str、&num);
printf(“您键入了%s和%i\n”,str,num);
如果(num==0)
{
printf(“%s”,str);
}
其他的
{
printf(“%c”,str[num]);
}
返回0;
}
您必须使用printf函数指定要打印的内容
#include <stdio.h>
int main() {
char str[11];
int num;
scanf("%s %i", &str, &num);
printf("You typed %s and %i\n", str, num);
if (num == 0)
{
printf ("%s", str);
}
else
{
printf ("%c", str[num]);
}
return 0;
}
使用%c,可以告诉函数要打印字符。
如果要打印整个字符串,应使用%s
顺便说一句,您应该始终指定格式化字符串,因为如果不指定它,它是不安全的 必须使用printf函数指定要打印的内容
#include <stdio.h>
int main() {
char str[11];
int num;
scanf("%s %i", &str, &num);
printf("You typed %s and %i\n", str, num);
if (num == 0)
{
printf ("%s", str);
}
else
{
printf ("%c", str[num]);
}
return 0;
}
使用%c,可以告诉函数要打印字符。
如果要打印整个字符串,应使用%s
顺便说一句,您应该始终指定格式化字符串,因为如果不指定它,它是不安全的 节省时间。启用所有警告。我希望得到关于
printf(str[num])的有用警告
使用scanf()注意%i
和%d
之间的区别。虽然%i
很好,因为您可以认为i=integer,但您通常需要%d
%d始终以10为基数,并且%i将自动协商,例如,将012
作为八进制表示10,或将0x123
作为十六进制表示291,这有时可能会有问题,除非您计划将八进制或十六进制值作为输入,使用scanf或sscanf使用%d
。节省时间。启用所有警告。我希望得到关于printf(str[num])的有用警告
使用scanf()注意%i
和%d
之间的区别。虽然%i
很好,因为您可以认为i=integer,但您通常需要%d
%d始终以10为基数,%i将自动协商,例如,将012
作为八进制表示10或0x123
作为十六进制表示291,这有时可能会有问题,除非您计划将八进制或十六进制值作为输入使用%d
与scanf或sscanf。中的和在scanf(“%s%i”中,&str,…
是技术UB。在scanf中使用scanf(“%s%i”,str,…
和更好(“%s%i”,str,…
是技术UB。使用scanf(“%s%i”,str,…
#include <stdio.h>
int main() {
char str[11];
int num;
scanf("%s %i", &str, &num);
printf("You typed %s and %i\n", str, num);
if (num == 0)
{
printf ("%s", str);
}
else
{
printf ("%c", str[num]);
}
return 0;
}
printf("%c", str[num]);