.column:last-child
不起作用,因为此类元素之前有另一个类的元素:
<div class="wrapper">
<div class="row"></div>
<div class="column"></div>
<div class="column"></div> <!-- margin-bottom: 0; -->
</div>
如何使用CSS实现?
.column:last-child
不起作用,因为此类元素之前有另一个类的元素:
<div class="wrapper">
<div class="row"></div>
<div class="column"></div>
<div class="column"></div> <!-- margin-bottom: 0; -->
</div>
如何使用CSS实现?
需要一个原生的js解决方案。有一个文本区域,当您单击按钮时,应将其值插入其中(每个值都在新行上):
<button data="0001">Add</button>
<button data="0002">Add</button>
<button data="0003">Add</button>
文本区域的结果:
0001
0002
0003
...
如何实现这样的事情?
菜单接受多个字符,即当您输入“hrhrhrhr”时,会调用一个应该通过输入“h”等来调用的函数。事实上,当输入与指定的字符不同的字符时,会出现错误被抛出并再次提供输入。我解释得很笨拙,但我不知道如何正确地表达它。这是一些简单的代码:
#include <libintl.h>
#include <stdbool.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
int main()
{
char option;
bool isRunning = true;
while(isRunning == true)
{
printf("\nCapere actio: ");
fflush(stdin);
option = getchar();
switch(option)
{
case 'h':
printf("Actionis:\n");
help();
break;
case 'c':
create();
break;
case 'l':
printf("Index numerorum:\n\n");
list();
break;
case 'q':
printf("Exitus\n");
isRunning = false;
break;
default:
printf("Actio invalidum!\n");
break;
}
}
return 0;
}
这个简单的检查失败了;它不显示结构内的内容:
char answer[100];
printf("\nEnter option and press enter: \n");
fgets(answer, sizeof(answer), stdin);
answer[strcspn(answer, "\n")] = 0;
if (answer[100] == '1')
{
const char* data = "Это список 1";
printf(data);
}
else if (answer[100] == '2')
{
const char* data = "Это список 2";
printf(data);
}
这个想法很简单 - 用户输入,例如 1,如果是这样,我们给出第一个值data
;当您分别输入 2 - 2nd 时。
下一个函数输出一些内容:
HPDF_Page_TextOut (page, 10, height - 40, datetime);
// Вывод
H옾 @
以下是生成日期/时间的函数的代码:
int datetime(void)
{
setlocale(LC_ALL, ".UTF-8");
time_t t;
time(&t);
printf("%s\n", ctime(&t));
return 0;
}
如果你引用它setlocale(LC_ALL, ".UTF-8");
,它会输出:
H예|$袻H|$蘻HǨ
:)
字符串列中的值只要是不带空格的一组字符就会添加,即 2024、Moscow、plant 等,但如果添加,例如,Moscow plant,则只保留第一个单词列中,第二个将转移到下一个,不允许您在其中输入数据(脚本成功完成)。这是我的代码:
#include <sqlite3.h>
#include <stdio.h>
int add(void)
{
sqlite3 *db;
char *err_msg = 0;
int rc = sqlite3_open("plants.db", &db);
if (rc != SQLITE_OK)
{
fprintf(stderr, "Cannot open database: %s\n", sqlite3_errmsg(db));
sqlite3_close(db);
return 1;
}
char sql[1024]; /* make room to hold sql string */
char year[300], source[300], type[300], familia[300], taxon[300], other[300];
printf("Enter year and press enter: \n");
scanf("%s", &year);
printf("Enter sourse and press enter: \n");
scanf("%s", &source);
printf("Enter type and press enter: \n");
scanf("%s", &type);
printf("Enter familia and press enter: \n");
scanf("%s", &familia);
printf("Enter taxon and press enter: \n");
scanf("%s", &taxon);
printf("Enter other and press enter: \n");
scanf("%s", &other);
sprintf(sql, "INSERT INTO numbers (year, source, type, familia, taxon, other) VALUES('%s', '%s', '%s', '%s', '%s', '%s');", year, source, type, familia, taxon, other);
rc = sqlite3_exec(db, sql, 0, 0, &err_msg);
if (rc != SQLITE_OK )
{
printf("SQL error: %s\n", err_msg);
sqlite3_free(err_msg);
sqlite3_close(db);
return 1;
}
sqlite3_close(db);
printf("data inserted\n");
return 0;
}
我不明白为什么你不能输入用空格分隔的单词。而且,手动,例如通过SQLite Browser,一切都正常添加,因此,问题不在表中,可能是什么问题?否则脚本就可以完美地完成工作。
添加
我编辑了代码,更改如下:
printf("Enter year and press enter: \n");
fgets(year, sizeof(year), stdin);
printf("Enter sourse and press enter: \n");
fgets(source, sizeof(source), stdin);
printf("Enter type and press enter: \n");
fgets(type, sizeof(type), stdin);
printf("Enter familia and press enter: \n");
fgets(familia, sizeof(familia), stdin);
printf("Enter taxon and press enter: \n");
fgets(taxon, sizeof(taxon), stdin);
printf("Enter other and press enter: \n");
fgets(other, sizeof(other), stdin);
sprintf(sql, "INSERT INTO numbers (year, source, type, familia, taxon, other) VALUES('?', '?', '?', '?', '?', '?');", year, source, type, familia, taxon, other);
但是,与此同时,printf("Enter year and press enter: \n");
它停止等待输入,因此无法在那里添加数据:)
我们输入该列的值,例如 - 0045。如果数据库中没有这样的东西,则停止应用程序,如果有,则继续。这是一段代码:
scanf("%s", number);
sprintf(sql, "SELECT EXISTS(SELECT number FROM numbers WHERE number = '%s')", number);
rc = sqlite3_exec(db, sql, 0, 0, &err_msg);
if (number < 0 ) {
//работаем
} else {
//не работаем
}
当然,没有任何作用,因为检查显然组织不正确。如何实施?
我对生成的列有一个规则,如下:
number TEXT NOT NULL UNIQUE GENERATED ALWAYS AS (substr('0000' || id, length('id'), 4)) STORED
但当数字达到十(0010)时,就会出现错误。如果将零的数量减少 1,那么当行数达到一百 (0100) 时,也会出现相同的错误。由于行数可能超过一千或更多,如何制定一个条件,使其不会对该上限阈值造成限制?