printf :
int printf (char *format, arg1, arg2,...);
printf , arg1, arg2 .. ( ) , format, .
format : , , , printf. % -. % - ( ) :
, .
, . . ( ) .
, , .
(), , , .
h, short, l ( ), long.
-
- | ||
d, i | int | |
O | int | ( ) |
x, X | int | ( 0 0), 10,11, ,15 abcdef ABCDEF |
u | int | |
C | int | |
S | char * | , - (\0), , |
F | double | [ - ]m.dddddd, d ( 6) |
e, E | double | [ - ]m.ddddddexx [ - ]m.ddddddExx, d ( 6) |
g, G | double | %e %E, , -4, ; %f. |
P | void * | ( ) |
% | % |
scanf :
int scanf (char *format, arg1, arg2,...);
scanf ( ), format arg1, arg2 .. , , , .
|
|
scanf , , . scanf . scanf , . :
fflush(stdin);
format, , :
, .
( %), , , .
, % - . , : * ( ); , ; h, l L, .
-
- | ||
D | int * | |
I | , ( 0) ( 0 0) | int * |
O | ( ) | int * |
u | unsigned int * | |
X | ( 0 0 ) | int * |
C | ( ) . ; , , %1s | char * |
S | ( ). - (\0) | char * |
e, f, g | , ; , , , | float * |
% | %, |
- d, i, o, u, x h, , short * ( int *), l ( ), long *. , - e, f, g l, , double * ( float *).
11.
, :
FILE *fp;
FILE - char, int, float, double; fp - - .
, .. , . fopen(< >, <>), :
fp = fopen("myFile1", "w");
"myFile1" - , "w" - . :
"r" - ;
"w" - ( , ;
|
|
, ;
"a" - ( , ).
"+". () "b", - "t" ( ).
fscanf fprintf. scanf printf , / , , , - .
, . fclose, .
1. myFile1 , :
int n1 = 123, n2 = 6789, n3, n4;
char m1[] = "Character_data", m2[50];
fprintf(fp, "%d %d %s", n1, n2, m1); // n1, n2 m1
fclose(fp); //
fp = fopen("myFile1", "r"); //
fscanf(fp, "%d%d%s", &n3, &n4, m2); // n3, n4 m2
fclose(fp); //
puts("------ Numbers and string: ------");
printf("%d %d %s", n3, n4, m2); // n3, n4 m2
puts(""); //
, rewind :
fp = fopen("myFile1", "w+"); //
fprintf(fp, "%d %d %s", n1, n2, m1); //
rewind(fp); //
fscanf(fp, "%d%d%s", &n3, &n4, m2); //
fclose(fp); //
printf("%d %d %s\n", n3, n4, m2); //
2. , :
struct student {
char familia[50];
int N_zachetki, god_rogdenia;
} stu = {"Ivanov_Ivan_Ivanovich", 572203, 1987};
fp = fopen("myFile2", "w+"); //
fprintf(fp, "%s %d %d", stu.familia, stu.N_zachetki, stu.god_rogdenia); //
//
rewind(fp); //
fscanf(fp, "%s%d%d", m2, &n3, &n4); //
fclose(fp); //
puts("------ Struktura: ---------------");
printf("%s %d %d\n", m2, n3, n4); //
3. :
int mas1[10] = {10, 20, 30, 40, 50, 60, 70, 80, 90, 100};
int mas2[10];
fp = fopen("myFile3", "w+"); //
for (int i=0; i<10; ++i)
fprintf(fp, "%d ", mas1[i]);
rewind(fp); //
for (i=0; i<10; ++i)
fscanf(fp, "%d", &mas2[i]);
fclose(fp);
puts("------ Massiv: ------------------");
for (i=0; i<10; ++i)
printf("%d ", mas2[i]);
1. , fscanf EOF (End Of File). , , , , , :
while (1)
{
...
if (fscanf(fp, "%d ", &n) == EOF)
break; //
...
}
2. fgets fputs, gets puts, , - , fgets - , ( , ).
|
|
n1 n2 m1 fgets fputs :
fp = fopen("myFile4", "w+"); //
fprintf(fp, "%d %d ", n1, n2); // n1 n2
fputs(m1, fp); // m1
rewind(fp); //
fscanf(fp, "%d%d ", &n3, &n4); // n3 n4
fgets(m2, 15, fp); // m2
fclose(fp); //
puts("------ Numbers and string: ------");
printf("%d %d %s\n", n3, n4, m2); //