c中如何读入多行字符串?
简单,用fgets+循环就可以了。 一般不要用scanf,因为使用不好就不安全; 也尽量不要用gets, 具体参看C-FAQ 7.1。例子如下:
#include <stdio.h>#include <string.h>#define BUFF_SIZE 128int main(int argc, char **argv){ int N = 3; char buffer[N][BUFF_SIZE]; char *p; int i; printf("Total input %d times.\n",N)
; for (i = 0; i < N; i++) { printf("%d: ", i); fgets(buffer[i], BUFF_SIZE, stdin)
; if((p = strchr(buffer[i], '\n')) != NULL) *p = '\0'; } printf("\nOutput:\n"); for (i=0; i<N;i++) printf("%s\n", buffer[i]); return 0;}
c语言中怎么表示一个字符串中的某一位?
在C语言中,表示一个字符串中的某一位可以通过索引来实现。字符串中的每个字符都有一个对应的索引,从0开始递增。例如,字符串 "hello" 中,'h' 的索引是0,'e' 的索引是1,依此类推。要表示字符串中的某一位,可以使用数组的方式来访问,例如 str[2] 表示字符串 str 中的第三个字符。
另外,也可以使用指针来表示字符串中的某一位,通过移动指针的位置来访问不同的字符。总之,C语言提供了多种方式来表示字符串中的某一位,以便于对字符串进行操作和处理。
C语言读取主字符串中指定的字符串
#include<stdio.h>
#include<string.h>
intmain()
{
charstr[100];
sscanf("2737237:348384122","%*[^:]:%[^\n]",str);//使用正则表达式:从:开始读取到最后
printf("%s\n",str);
return0;
c语言中,什么函数可以用于每次从键盘读取一个字符?
在C语言中,可以使用stdio.h头文件中的getchar()函数来从键盘读取一个字符。
getchar()函数的原型如下:
int getchar(void);
该函数会从标准输入(键盘)读取一个字符,并返回读取到的字符的ASCII码值。如果读取失败或遇到文件结束符(EOF),则返回EOF。
使用示例:
```
#include <stdio.h>
int main() {
char ch;
printf("请输入一个字符:");
ch = getchar();
printf("你输入的字符是:%c\n", ch);
return 0;
}
```
在上述示例中,程序会提示用户输入一个字符,然后使用getchar()函数读取用户输入的字符,并将其赋值给变量ch。最后,程序会输出用户输入的字符。