Я использую массив для представления таблицы, и я хочу использовать «getchar» для обновления значения в таблице.Обновить значение в массиве с помощью «getchar»
Original table: 0 0 0 0 Input table: 1 0 Output table: 1 0 0 0
0 0 0 0 1 1 1 1 0 0
0 0 0 0 0 0 0 0
struct dimension {// represent the number of row and number of col of a table
int num_row;
int num_col;
};
void set_value(int t[],
const struct dimension *dim,
const int row,
const int col,
const int v) {
t[row*dim->num_col+col] = v;
}//update the value in a table
void update (int t[],
const struct dimension *table_dim,
struct dimension *input_dim) {
for (int k=0; k<(input_dim->num_row); k++){
for (int l=0; l<(input_dim->num_col); l++){
array[l] = getchar();
table_set_entry(array, input_dim, 0, 0,array[l]);
if (array[l] == '\n') break;
}
}
}
int main(void) {
int o[12] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
const struct dimension a = {3,4};
struct dimension in_dim = { 4, 5 };
update(o,a,in_dim);
}
Моя идея в том, что я должен создать таблицу и сначала установить значение нуля для входной таблицы. Затем измените его на getchar(). Наконец, обновите исходную таблицу. Тем не менее, я не знаю, как использовать getchar для изменения значения. Кто-нибудь может мне помочь? Если что-то заставляет вас запутать, оставьте комментарий. Заранее спасибо. :)
'getchar()' ничего не меняет, кроме буфера за 'stdin'. Он просто * получает * персонажа. – Kninnug
@Kninnug Я хочу использовать getchar() сохранить вход, а затем изменить значение. Является ли это возможным? – user2185071
@ user2185071 Что заставило вас изменить стоимость? – DzungAh