- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如果我仅使用Welcome消息,我的代码可以正常工作,但是当打印p->client_name
指针时,消息不居中。
所以我的问题是如何将消息和客户端名称居中,就像它是一条消息一样。为什么它目前仅将消息欢迎居中
sprintf(message,"============================================================");
send_message(RED, message);
const char *mes = "Welcome";
sprintf(message, "[ %*s %s ]", (45 - strlen(message)) / 2 + ((strlen(message) % 2 == 0) ? 1 : 0) + strlen(message), mes, p->client_name);
send_message(RED, message);
sprintf(message,"============================================================");
send_message(RED, message);
Ví dụ:
=============================================
[ Welcome Carol ]
=============================================
1 Câu trả lời
这段代码看起来可以工作。注释解释了计算过程。测试代码展示了我如何测试这些东西。
/*
** Centre a pair of words in a given width without creating a single
** string to centre.
**
** Format will be "[ %*s %-*s ]"; what are the values required for the
** two lengths R1, R2 for a given width W and lengths L1, L2?
**
** +----------------------------------------------------------+
** [ @.........R1..........@ @..............R2..............@ ]
** [ XXXXXXXXXXXXXXXX YYYYYYYYYYYYYYYYYYYYYYYYY ]
** [ G1 | L1 | | L2 | G2 ]
** +----------------------------------------------------------+
**
** W = G1 + L1 + 1 + L2 + G2
**
** G1 = G2 or G1 + 1 = G2
** L1 + L2 + 1 <= W (return G1 = G2 = 1 if it is bigger)
**
** For the purposes of the calculation, the leading "[ " and trailing " ]"
** are not counted as part of W.
**
** Total Padding T = W - (L1 + L2 + 1)
** Hence: G1 = T / 2
** G2 = T - G1
** R1 = L1 + G1
** R2 = L2 + G2
*/
static void centre_two_lengths(int w, int l1, int l2, int *r1, int *r2)
{
int t = w - (l1 + l2 + 1);
if (t <= 0)
{
*r1 = *r2 = 1;
}
khác
{
int g1 = t / 2;
int g2 = t - g1;
*r1 = l1 + g1;
*r2 = l2 + g2;
}
}
#include
#include
static void test_width(int width)
{
const char *data[] =
{
"A", "B",
"AA", "B",
"A", "BB",
"A", "BBB",
"A", "BBBB",
"AAA", "B",
"Hello", "World",
"Middle of", "the road",
"Welcome", "to Jurassic Park",
"Bienvenue", "a Paris",
"Twelve Place", "Twice - Over",
"Eleven Here", "Thirteen Here",
"Much much longer", "than this",
"A", "Discourse on Inequality",
"What sort of pedant am", "I",
"What an essay", "busting all the limits",
};
int num_pairs = (sizeof(data) / sizeof(data[0])) / 2;
for (int i = 0; i < num_pairs; i++)
{
int r1;
int r2;
const char *s1 = data[2 * i + 0];
const char *s2 = data[2 * i + 1];
int l1 = strlen(s1);
int l2 = strlen(s2);
centre_two_lengths(width, l1, l2, &r1, &r2);
printf("W = %2d, L1 = %2d, L2 = %2d, R1 = %2d, R2 = %2d ", width, l1, l2, r1, r2);
printf("[ %*s %-*s ]\n", r1, s1, r2, s2);
}
}
int main(void)
{
for (int width= 24; width < 30; width++)
test_width(width);
return(0);
}
请注意,代码不会尝试处理 L1
hoặc L2
为零的情况。在大多数情况下都可以这样做,除非非零长度太大。不过,这似乎没有必要。目标是将两个(非零长度)字符串居中。该计算也不会尝试处理字符串中的前导空格或尾随空格;简单地假设没有前导或尾随空格。它还假设一个单字节代码集;如果 UTF-8 包含 ASCII 范围之外的字符,它就无法正确居中(并且它也不会处理控制字符——退格、制表符、换行符、回车符等——明智地)。
Đầu ra:
W = 24, L1 = 1, L2 = 1, R1 = 11, R2 = 12 [ A B ]
W = 24, L1 = 2, L2 = 1, R1 = 12, R2 = 11 [ AA B ]
W = 24, L1 = 1, L2 = 2, R1 = 11, R2 = 12 [ A BB ]
W = 24, L1 = 1, L2 = 3, R1 = 10, R2 = 13 [ A BBB ]
W = 24, L1 = 1, L2 = 4, R1 = 10, R2 = 13 [ A BBBB ]
W = 24, L1 = 3, L2 = 1, R1 = 12, R2 = 11 [ AAA B ]
W = 24, L1 = 5, L2 = 5, R1 = 11, R2 = 12 [ Hello World ]
W = 24, L1 = 9, L2 = 8, R1 = 12, R2 = 11 [ Middle of the road ]
W = 24, L1 = 7, L2 = 16, R1 = 1, R2 = 1 [ Welcome to Jurassic Park ]
W = 24, L1 = 9, L2 = 7, R1 = 12, R2 = 11 [ Bienvenue a Paris ]
W = 24, L1 = 12, L2 = 12, R1 = 1, R2 = 1 [ Twelve Place Twice - Over ]
W = 24, L1 = 11, L2 = 13, R1 = 1, R2 = 1 [ Eleven Here Thirteen Here ]
W = 24, L1 = 16, L2 = 9, R1 = 1, R2 = 1 [ Much much longer than this ]
W = 24, L1 = 1, L2 = 23, R1 = 1, R2 = 1 [ A Discourse on Inequality ]
W = 24, L1 = 22, L2 = 1, R1 = 1, R2 = 1 [ What sort of pedant am I ]
W = 24, L1 = 13, L2 = 22, R1 = 1, R2 = 1 [ What an essay busting all the limits ]
W = 25, L1 = 1, L2 = 1, R1 = 12, R2 = 12 [ A B ]
W = 25, L1 = 2, L2 = 1, R1 = 12, R2 = 12 [ AA B ]
W = 25, L1 = 1, L2 = 2, R1 = 11, R2 = 13 [ A BB ]
W = 25, L1 = 1, L2 = 3, R1 = 11, R2 = 13 [ A BBB ]
W = 25, L1 = 1, L2 = 4, R1 = 10, R2 = 14 [ A BBBB ]
W = 25, L1 = 3, L2 = 1, R1 = 13, R2 = 11 [ AAA B ]
W = 25, L1 = 5, L2 = 5, R1 = 12, R2 = 12 [ Hello World ]
W = 25, L1 = 9, L2 = 8, R1 = 12, R2 = 12 [ Middle of the road ]
W = 25, L1 = 7, L2 = 16, R1 = 7, R2 = 17 [ Welcome to Jurassic Park ]
W = 25, L1 = 9, L2 = 7, R1 = 13, R2 = 11 [ Bienvenue a Paris ]
W = 25, L1 = 12, L2 = 12, R1 = 1, R2 = 1 [ Twelve Place Twice - Over ]
W = 25, L1 = 11, L2 = 13, R1 = 1, R2 = 1 [ Eleven Here Thirteen Here ]
W = 25, L1 = 16, L2 = 9, R1 = 1, R2 = 1 [ Much much longer than this ]
W = 25, L1 = 1, L2 = 23, R1 = 1, R2 = 1 [ A Discourse on Inequality ]
W = 25, L1 = 22, L2 = 1, R1 = 22, R2 = 2 [ What sort of pedant am I ]
W = 25, L1 = 13, L2 = 22, R1 = 1, R2 = 1 [ What an essay busting all the limits ]
W = 26, L1 = 1, L2 = 1, R1 = 12, R2 = 13 [ A B ]
W = 26, L1 = 2, L2 = 1, R1 = 13, R2 = 12 [ AA B ]
W = 26, L1 = 1, L2 = 2, R1 = 12, R2 = 13 [ A BB ]
W = 26, L1 = 1, L2 = 3, R1 = 11, R2 = 14 [ A BBB ]
W = 26, L1 = 1, L2 = 4, R1 = 11, R2 = 14 [ A BBBB ]
W = 26, L1 = 3, L2 = 1, R1 = 13, R2 = 12 [ AAA B ]
W = 26, L1 = 5, L2 = 5, R1 = 12, R2 = 13 [ Hello World ]
W = 26, L1 = 9, L2 = 8, R1 = 13, R2 = 12 [ Middle of the road ]
W = 26, L1 = 7, L2 = 16, R1 = 8, R2 = 17 [ Welcome to Jurassic Park ]
W = 26, L1 = 9, L2 = 7, R1 = 13, R2 = 12 [ Bienvenue a Paris ]
W = 26, L1 = 12, L2 = 12, R1 = 12, R2 = 13 [ Twelve Place Twice - Over ]
W = 26, L1 = 11, L2 = 13, R1 = 11, R2 = 14 [ Eleven Here Thirteen Here ]
W = 26, L1 = 16, L2 = 9, R1 = 1, R2 = 1 [ Much much longer than this ]
W = 26, L1 = 1, L2 = 23, R1 = 1, R2 = 24 [ A Discourse on Inequality ]
W = 26, L1 = 22, L2 = 1, R1 = 23, R2 = 2 [ What sort of pedant am I ]
W = 26, L1 = 13, L2 = 22, R1 = 1, R2 = 1 [ What an essay busting all the limits ]
W = 27, L1 = 1, L2 = 1, R1 = 13, R2 = 13 [ A B ]
W = 27, L1 = 2, L2 = 1, R1 = 13, R2 = 13 [ AA B ]
W = 27, L1 = 1, L2 = 2, R1 = 12, R2 = 14 [ A BB ]
W = 27, L1 = 1, L2 = 3, R1 = 12, R2 = 14 [ A BBB ]
W = 27, L1 = 1, L2 = 4, R1 = 11, R2 = 15 [ A BBBB ]
W = 27, L1 = 3, L2 = 1, R1 = 14, R2 = 12 [ AAA B ]
W = 27, L1 = 5, L2 = 5, R1 = 13, R2 = 13 [ Hello World ]
W = 27, L1 = 9, L2 = 8, R1 = 13, R2 = 13 [ Middle of the road ]
W = 27, L1 = 7, L2 = 16, R1 = 8, R2 = 18 [ Welcome to Jurassic Park ]
W = 27, L1 = 9, L2 = 7, R1 = 14, R2 = 12 [ Bienvenue a Paris ]
W = 27, L1 = 12, L2 = 12, R1 = 13, R2 = 13 [ Twelve Place Twice - Over ]
W = 27, L1 = 11, L2 = 13, R1 = 12, R2 = 14 [ Eleven Here Thirteen Here ]
W = 27, L1 = 16, L2 = 9, R1 = 16, R2 = 10 [ Much much longer than this ]
W = 27, L1 = 1, L2 = 23, R1 = 2, R2 = 24 [ A Discourse on Inequality ]
W = 27, L1 = 22, L2 = 1, R1 = 23, R2 = 3 [ What sort of pedant am I ]
W = 27, L1 = 13, L2 = 22, R1 = 1, R2 = 1 [ What an essay busting all the limits ]
W = 28, L1 = 1, L2 = 1, R1 = 13, R2 = 14 [ A B ]
W = 28, L1 = 2, L2 = 1, R1 = 14, R2 = 13 [ AA B ]
W = 28, L1 = 1, L2 = 2, R1 = 13, R2 = 14 [ A BB ]
W = 28, L1 = 1, L2 = 3, R1 = 12, R2 = 15 [ A BBB ]
W = 28, L1 = 1, L2 = 4, R1 = 12, R2 = 15 [ A BBBB ]
W = 28, L1 = 3, L2 = 1, R1 = 14, R2 = 13 [ AAA B ]
W = 28, L1 = 5, L2 = 5, R1 = 13, R2 = 14 [ Hello World ]
W = 28, L1 = 9, L2 = 8, R1 = 14, R2 = 13 [ Middle of the road ]
W = 28, L1 = 7, L2 = 16, R1 = 9, R2 = 18 [ Welcome to Jurassic Park ]
W = 28, L1 = 9, L2 = 7, R1 = 14, R2 = 13 [ Bienvenue a Paris ]
W = 28, L1 = 12, L2 = 12, R1 = 13, R2 = 14 [ Twelve Place Twice - Over ]
W = 28, L1 = 11, L2 = 13, R1 = 12, R2 = 15 [ Eleven Here Thirteen Here ]
W = 28, L1 = 16, L2 = 9, R1 = 17, R2 = 10 [ Much much longer than this ]
W = 28, L1 = 1, L2 = 23, R1 = 2, R2 = 25 [ A Discourse on Inequality ]
W = 28, L1 = 22, L2 = 1, R1 = 24, R2 = 3 [ What sort of pedant am I ]
W = 28, L1 = 13, L2 = 22, R1 = 1, R2 = 1 [ What an essay busting all the limits ]
W = 29, L1 = 1, L2 = 1, R1 = 14, R2 = 14 [ A B ]
W = 29, L1 = 2, L2 = 1, R1 = 14, R2 = 14 [ AA B ]
W = 29, L1 = 1, L2 = 2, R1 = 13, R2 = 15 [ A BB ]
W = 29, L1 = 1, L2 = 3, R1 = 13, R2 = 15 [ A BBB ]
W = 29, L1 = 1, L2 = 4, R1 = 12, R2 = 16 [ A BBBB ]
W = 29, L1 = 3, L2 = 1, R1 = 15, R2 = 13 [ AAA B ]
W = 29, L1 = 5, L2 = 5, R1 = 14, R2 = 14 [ Hello World ]
W = 29, L1 = 9, L2 = 8, R1 = 14, R2 = 14 [ Middle of the road ]
W = 29, L1 = 7, L2 = 16, R1 = 9, R2 = 19 [ Welcome to Jurassic Park ]
W = 29, L1 = 9, L2 = 7, R1 = 15, R2 = 13 [ Bienvenue a Paris ]
W = 29, L1 = 12, L2 = 12, R1 = 14, R2 = 14 [ Twelve Place Twice - Over ]
W = 29, L1 = 11, L2 = 13, R1 = 13, R2 = 15 [ Eleven Here Thirteen Here ]
W = 29, L1 = 16, L2 = 9, R1 = 17, R2 = 11 [ Much much longer than this ]
W = 29, L1 = 1, L2 = 23, R1 = 3, R2 = 25 [ A Discourse on Inequality ]
W = 29, L1 = 22, L2 = 1, R1 = 24, R2 = 4 [ What sort of pedant am I ]
W = 29, L1 = 13, L2 = 22, R1 = 1, R2 = 1 [ What an essay busting all the limits ]
<小时>小时>
这段代码似乎满足修改后的要求。
/*
** Given two words W1,W2, enclose them in square brackets "[ W1 W2]"
** Centre a pair of words in a given width without creating a single
** string to centre.
**
** Format will be "%*s[ %s %s ]%*s"; what are the values required for
** R1, R2 given the two lengths L1, L2 and width W?
**
** +----------------------------------------------------------+
** | |
** | [ XXXXXXXXXXXXXXXX YYYYYYYYYYYYYYYYYYYYYYYYY ] |
** | R1 | | L1 | | L2 | | R2 |
** +----------------------------------------------------------+
**
** W = R1 + L1 + 5 + L2 + R2
**
** for centred output, either R1 = R2 or R1 + 1 = R2
** L1 + L2 + 5 <= W (return R1 = R2 = 0 if it is bigger)
**
** Total Padding T = W - (L1 + L2 + 5)
** Hence: R1 = T / 2
** R2 = T - R1
*/
static void centre_two_lengths(int w, int l1, int l2, int *r1, int *r2)
{
int t = w - (l1 + l2 + 5);
if (t <= 0)
{
*r1 = *r2 = 0;
}
khác
{
*r1 = t / 2;
*r2 = t - *r1;
}
}
#include
#include
static void test_width(int width)
{
const char *data[] =
{
"A", "B",
"AA", "B",
"A", "BB",
"A", "BBB",
"A", "BBBB",
"AAA", "B",
"Hello", "World",
"Middle of", "the road",
"Welcome", "to Jurassic Park",
"Bienvenue", "a Paris",
"Twelve Place", "Twice - Over",
"Eleven Here", "Thirteen Here",
"Much much longer", "than this",
"A", "Discourse on Inequality",
"What sort of pedant am", "I",
"What an essay", "busting all the limits",
};
int num_pairs = (sizeof(data) / sizeof(data[0])) / 2;
for (int i = 0; i < num_pairs; i++)
{
int r1;
int r2;
const char *s1 = data[2 * i + 0];
const char *s2 = data[2 * i + 1];
int l1 = strlen(s1);
int l2 = strlen(s2);
centre_two_lengths(width, l1, l2, &r1, &r2);
printf("W = %2d, L1 = %2d, L2 = %2d, R1 = %2d, R2 = %2d ", width, l1, l2, r1, r2);
printf("|%*s[ %s %s ]%*s|\n", r1, "", s1, s2, r2, "");
}
}
int main(void)
{
for (int width= 28; width < 34; width++)
test_width(width);
return(0);
}
如果您不需要尾随空格,您可以简化该函数 - 它可以简单地返回前导空格所需的值,并且您可以从格式字符串和 r2
以及后续的 ""
。垂直条的存在只是为了让您可以看到数据是否正确居中(并且尾随条需要尾随空格才能有意义)。
Đầu ra:
W = 28, L1 = 1, L2 = 1, R1 = 10, R2 = 11 | [ A B ] |
W = 28, L1 = 2, L2 = 1, R1 = 10, R2 = 10 | [ AA B ] |
W = 28, L1 = 1, L2 = 2, R1 = 10, R2 = 10 | [ A BB ] |
W = 28, L1 = 1, L2 = 3, R1 = 9, R2 = 10 | [ A BBB ] |
W = 28, L1 = 1, L2 = 4, R1 = 9, R2 = 9 | [ A BBBB ] |
W = 28, L1 = 3, L2 = 1, R1 = 9, R2 = 10 | [ AAA B ] |
W = 28, L1 = 5, L2 = 5, R1 = 6, R2 = 7 | [ Hello World ] |
W = 28, L1 = 9, L2 = 8, R1 = 3, R2 = 3 | [ Middle of the road ] |
W = 28, L1 = 7, L2 = 16, R1 = 0, R2 = 0 |[ Welcome to Jurassic Park ]|
W = 28, L1 = 9, L2 = 7, R1 = 3, R2 = 4 | [ Bienvenue a Paris ] |
W = 28, L1 = 12, L2 = 12, R1 = 0, R2 = 0 |[ Twelve Place Twice - Over ]|
W = 28, L1 = 11, L2 = 13, R1 = 0, R2 = 0 |[ Eleven Here Thirteen Here ]|
W = 28, L1 = 16, L2 = 9, R1 = 0, R2 = 0 |[ Much much longer than this ]|
W = 28, L1 = 1, L2 = 23, R1 = 0, R2 = 0 |[ A Discourse on Inequality ]|
W = 28, L1 = 22, L2 = 1, R1 = 0, R2 = 0 |[ What sort of pedant am I ]|
W = 28, L1 = 13, L2 = 22, R1 = 0, R2 = 0 |[ What an essay busting all the limits ]|
W = 29, L1 = 1, L2 = 1, R1 = 11, R2 = 11 | [ A B ] |
W = 29, L1 = 2, L2 = 1, R1 = 10, R2 = 11 | [ AA B ] |
W = 29, L1 = 1, L2 = 2, R1 = 10, R2 = 11 | [ A BB ] |
W = 29, L1 = 1, L2 = 3, R1 = 10, R2 = 10 | [ A BBB ] |
W = 29, L1 = 1, L2 = 4, R1 = 9, R2 = 10 | [ A BBBB ] |
W = 29, L1 = 3, L2 = 1, R1 = 10, R2 = 10 | [ AAA B ] |
W = 29, L1 = 5, L2 = 5, R1 = 7, R2 = 7 | [ Hello World ] |
W = 29, L1 = 9, L2 = 8, R1 = 3, R2 = 4 | [ Middle of the road ] |
W = 29, L1 = 7, L2 = 16, R1 = 0, R2 = 1 |[ Welcome to Jurassic Park ] |
W = 29, L1 = 9, L2 = 7, R1 = 4, R2 = 4 | [ Bienvenue a Paris ] |
W = 29, L1 = 12, L2 = 12, R1 = 0, R2 = 0 |[ Twelve Place Twice - Over ]|
W = 29, L1 = 11, L2 = 13, R1 = 0, R2 = 0 |[ Eleven Here Thirteen Here ]|
W = 29, L1 = 16, L2 = 9, R1 = 0, R2 = 0 |[ Much much longer than this ]|
W = 29, L1 = 1, L2 = 23, R1 = 0, R2 = 0 |[ A Discourse on Inequality ]|
W = 29, L1 = 22, L2 = 1, R1 = 0, R2 = 1 |[ What sort of pedant am I ] |
W = 29, L1 = 13, L2 = 22, R1 = 0, R2 = 0 |[ What an essay busting all the limits ]|
W = 30, L1 = 1, L2 = 1, R1 = 11, R2 = 12 | [ A B ] |
W = 30, L1 = 2, L2 = 1, R1 = 11, R2 = 11 | [ AA B ] |
W = 30, L1 = 1, L2 = 2, R1 = 11, R2 = 11 | [ A BB ] |
W = 30, L1 = 1, L2 = 3, R1 = 10, R2 = 11 | [ A BBB ] |
W = 30, L1 = 1, L2 = 4, R1 = 10, R2 = 10 | [ A BBBB ] |
W = 30, L1 = 3, L2 = 1, R1 = 10, R2 = 11 | [ AAA B ] |
W = 30, L1 = 5, L2 = 5, R1 = 7, R2 = 8 | [ Hello World ] |
W = 30, L1 = 9, L2 = 8, R1 = 4, R2 = 4 | [ Middle of the road ] |
W = 30, L1 = 7, L2 = 16, R1 = 1, R2 = 1 | [ Welcome to Jurassic Park ] |
W = 30, L1 = 9, L2 = 7, R1 = 4, R2 = 5 | [ Bienvenue a Paris ] |
W = 30, L1 = 12, L2 = 12, R1 = 0, R2 = 1 |[ Twelve Place Twice - Over ] |
W = 30, L1 = 11, L2 = 13, R1 = 0, R2 = 1 |[ Eleven Here Thirteen Here ] |
W = 30, L1 = 16, L2 = 9, R1 = 0, R2 = 0 |[ Much much longer than this ]|
W = 30, L1 = 1, L2 = 23, R1 = 0, R2 = 1 |[ A Discourse on Inequality ] |
W = 30, L1 = 22, L2 = 1, R1 = 1, R2 = 1 | [ What sort of pedant am I ] |
W = 30, L1 = 13, L2 = 22, R1 = 0, R2 = 0 |[ What an essay busting all the limits ]|
W = 31, L1 = 1, L2 = 1, R1 = 12, R2 = 12 | [ A B ] |
W = 31, L1 = 2, L2 = 1, R1 = 11, R2 = 12 | [ AA B ] |
W = 31, L1 = 1, L2 = 2, R1 = 11, R2 = 12 | [ A BB ] |
W = 31, L1 = 1, L2 = 3, R1 = 11, R2 = 11 | [ A BBB ] |
W = 31, L1 = 1, L2 = 4, R1 = 10, R2 = 11 | [ A BBBB ] |
W = 31, L1 = 3, L2 = 1, R1 = 11, R2 = 11 | [ AAA B ] |
W = 31, L1 = 5, L2 = 5, R1 = 8, R2 = 8 | [ Hello World ] |
W = 31, L1 = 9, L2 = 8, R1 = 4, R2 = 5 | [ Middle of the road ] |
W = 31, L1 = 7, L2 = 16, R1 = 1, R2 = 2 | [ Welcome to Jurassic Park ] |
W = 31, L1 = 9, L2 = 7, R1 = 5, R2 = 5 | [ Bienvenue a Paris ] |
W = 31, L1 = 12, L2 = 12, R1 = 1, R2 = 1 | [ Twelve Place Twice - Over ] |
W = 31, L1 = 11, L2 = 13, R1 = 1, R2 = 1 | [ Eleven Here Thirteen Here ] |
W = 31, L1 = 16, L2 = 9, R1 = 0, R2 = 1 |[ Much much longer than this ] |
W = 31, L1 = 1, L2 = 23, R1 = 1, R2 = 1 | [ A Discourse on Inequality ] |
W = 31, L1 = 22, L2 = 1, R1 = 1, R2 = 2 | [ What sort of pedant am I ] |
W = 31, L1 = 13, L2 = 22, R1 = 0, R2 = 0 |[ What an essay busting all the limits ]|
W = 32, L1 = 1, L2 = 1, R1 = 12, R2 = 13 | [ A B ] |
W = 32, L1 = 2, L2 = 1, R1 = 12, R2 = 12 | [ AA B ] |
W = 32, L1 = 1, L2 = 2, R1 = 12, R2 = 12 | [ A BB ] |
W = 32, L1 = 1, L2 = 3, R1 = 11, R2 = 12 | [ A BBB ] |
W = 32, L1 = 1, L2 = 4, R1 = 11, R2 = 11 | [ A BBBB ] |
W = 32, L1 = 3, L2 = 1, R1 = 11, R2 = 12 | [ AAA B ] |
W = 32, L1 = 5, L2 = 5, R1 = 8, R2 = 9 | [ Hello World ] |
W = 32, L1 = 9, L2 = 8, R1 = 5, R2 = 5 | [ Middle of the road ] |
W = 32, L1 = 7, L2 = 16, R1 = 2, R2 = 2 | [ Welcome to Jurassic Park ] |
W = 32, L1 = 9, L2 = 7, R1 = 5, R2 = 6 | [ Bienvenue a Paris ] |
W = 32, L1 = 12, L2 = 12, R1 = 1, R2 = 2 | [ Twelve Place Twice - Over ] |
W = 32, L1 = 11, L2 = 13, R1 = 1, R2 = 2 | [ Eleven Here Thirteen Here ] |
W = 32, L1 = 16, L2 = 9, R1 = 1, R2 = 1 | [ Much much longer than this ] |
W = 32, L1 = 1, L2 = 23, R1 = 1, R2 = 2 | [ A Discourse on Inequality ] |
W = 32, L1 = 22, L2 = 1, R1 = 2, R2 = 2 | [ What sort of pedant am I ] |
W = 32, L1 = 13, L2 = 22, R1 = 0, R2 = 0 |[ What an essay busting all the limits ]|
W = 33, L1 = 1, L2 = 1, R1 = 13, R2 = 13 | [ A B ] |
W = 33, L1 = 2, L2 = 1, R1 = 12, R2 = 13 | [ AA B ] |
W = 33, L1 = 1, L2 = 2, R1 = 12, R2 = 13 | [ A BB ] |
W = 33, L1 = 1, L2 = 3, R1 = 12, R2 = 12 | [ A BBB ] |
W = 33, L1 = 1, L2 = 4, R1 = 11, R2 = 12 | [ A BBBB ] |
W = 33, L1 = 3, L2 = 1, R1 = 12, R2 = 12 | [ AAA B ] |
W = 33, L1 = 5, L2 = 5, R1 = 9, R2 = 9 | [ Hello World ] |
W = 33, L1 = 9, L2 = 8, R1 = 5, R2 = 6 | [ Middle of the road ] |
W = 33, L1 = 7, L2 = 16, R1 = 2, R2 = 3 | [ Welcome to Jurassic Park ] |
W = 33, L1 = 9, L2 = 7, R1 = 6, R2 = 6 | [ Bienvenue a Paris ] |
W = 33, L1 = 12, L2 = 12, R1 = 2, R2 = 2 | [ Twelve Place Twice - Over ] |
W = 33, L1 = 11, L2 = 13, R1 = 2, R2 = 2 | [ Eleven Here Thirteen Here ] |
W = 33, L1 = 16, L2 = 9, R1 = 1, R2 = 2 | [ Much much longer than this ] |
W = 33, L1 = 1, L2 = 23, R1 = 2, R2 = 2 | [ A Discourse on Inequality ] |
W = 33, L1 = 22, L2 = 1, R1 = 2, R2 = 3 | [ What sort of pedant am I ] |
W = 33, L1 = 13, L2 = 22, R1 = 0, R2 = 0 |[ What an essay busting all the limits ]|
关于居中添加名称的 sprintf 消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47740652/
Tôi đã đọc rằng nếu một bộ sưu tập được "phát hành" thì nó cũng sẽ phát hành tất cả các đối tượng của nó. Mặt khác, tôi cũng đọc rằng một bộ sưu tập sẽ giải phóng các đối tượng của nó khi bộ sưu tập đó được giải phóng. Nhưng điều cuối cùng đó không phải lúc nào cũng xảy ra, như Apple đã nói. Hệ thống quyết định xem có nên hủy phân bổ hay không. Trong hầu hết các trường hợp
Tôi có một ứng dụng máy khách-máy chủ sử dụng WCF để giao tiếp và NetDataContractSerializer để tuần tự hóa đồ thị đối tượng. Vì có rất nhiều dữ liệu được truyền giữa máy chủ và máy khách nên tôi đã cố gắng tinh chỉnh các thành viên dữ liệu
Tôi cần trợ giúp về hàng đợi JMS và xử lý tin nhắn. Tôi có một tình huống mà tôi cần xử lý đồng bộ các thông báo cho một nhóm thuộc tính cụ thể, nhưng có thể xử lý đồng thời các thông báo trên nhiều nhóm thuộc tính khác nhau. Tôi đã học được một số điều về nhóm tin nhắn và hàng đợi theo từng thuộc tính cụ thể của từng nhóm. Ý tưởng của tôi là tôi muốn nhắm mục tiêu
Gần đây tôi bắt đầu sử dụng C++ và tôi có một mong muốn mạnh mẽ là #define print(msg) std::cout void print(T const& msg) { std::cout void
Tôi đã viết một bài kiểm tra đơn giản để sử dụng JGroups. Có hai ứng dụng đơn giản như thế này import org.jgroups.*; import org.jgroups.conf.ConfiguratorFact
Câu hỏi này đã có câu trả lời ở đây: Trình duyệt của bạn không hỗ trợ nhắn tin Firebase, làm sao để giải quyết vấn đề này? (3 câu trả lời) Đã đóng 7 tháng trước
Trong ứng dụng bảng điều khiển C# của mình, tôi đang cố gắng cập nhật một tài khoản trong CRM 2016. IsFaulted vẫn trả về giá trị true. Khi tôi phân tích sâu hơn, nó trả về thông báo lỗi sau: EntityState phải được thiết lập
Tôi đang cố gắng ghi json sau vào máy chủ graylog qua tcp: {"facility":"GELF","file":"","full_message":"Test Message Tcp",
Tôi đang sử dụng khung nhắn tin của Django để chỉ ra các hoạt động thành công và hoạt động không thành công. Làm thế nào để khắc phục sự cố thông báo đăng nhập và đăng xuất tài khoản? Hiện tại, sau khi đăng nhập, trang đích hiển thị rằng bạn đã đăng nhập thành công bằng "tên người dùng". Tôi không muốn hiển thị thông báo này nhưng tất cả các thông báo thành công khác đều phải được hiển thị. Nỗ lực của tôi
Tôi đã vô hiệu hóa thông báo qDebug() bằng cách viết CONFIG(release, debug|release):DEFINES += QT_NO_DEBUG_OUTPUT trong tệp .pro. Điều này tốt. Tôi tự hỏi liệu điều đó có thể không
Tôi đang sử dụng ThrottleRequest để hạn chế số lần đăng nhập. Trong Kendler.php tôi có 'throttle' => \Illuminate\Routing\Middleware\Throttl
Tôi có một tập lệnh đưa ra ngoại lệ thông qua die. Khi phát hiện ngoại lệ, tôi muốn xuất thông báo mà không đính kèm thông tin vị trí. Tập lệnh: #!/usr/bin/perl -w use strict; eval { die "Lỗi của tôi
Các loại tin nhắn được phép là gì (chuỗi, byte, số nguyên, v.v.)? Kích thước tối đa của một tin nhắn là bao nhiêu? Số lượng hàng đợi và trao đổi tối đa là bao nhiêu? Câu trả lời hay nhất Về lý thuyết, bất cứ thứ gì cũng có thể được lưu trữ/gửi dưới dạng tin nhắn. Trên thực tế, bạn không muốn lưu trữ bất cứ thứ gì trong hàng đợi. Nếu hàng đợi chủ yếu là
Về cơ bản, tôi đang cố gắng tạo một GUI đơn giản để sử dụng với Robocopy. Tôi đang sử dụng một quy trình để mở Robocopy và chuyển hướng đầu ra đến một hộp văn bản như thế này: Với MyProcess.StartI
Tôi muốn ghi lại các tin nhắn đến hàng đợi MQ vào cơ sở dữ liệu/tệp hoặc hàng đợi nhật ký khác và tôi không thể sửa đổi mã hiện có. Có cách nào để triển khai một số tiện ích ghi nhật ký tin nhắn tương tự như trình đánh hơi HTTP không? Hoặc có thể MQ có một số chức năng tích hợp để ghi lại tin nhắn?
Tôi có một trang với bảng dữ liệu single_selection và một nút lệnh. Nút lệnh gọi phương thức bean để xác minh rằng lựa chọn đã được thực hiện. Nếu không, nó sẽ hiển thị thông báo cảnh báo người dùng. Nếu một lựa chọn được thực hiện, nó sẽ điều hướng đến một lựa chọn khác
Tôi biết MSVC có thể thực hiện việc này thông qua tin nhắn pragma -> http://support.microsoft.com/kb/155196 Có cách nào để gcc in cảnh báo hoặc tin nhắn do người dùng tạo không? (Tôi không thể tìm thấy thung lũng
Liệu các thông điệp Erlang gốc có thể cung cấp hiệu suất hợp lý khi có số lượng lớn các nút hoặc dữ liệu nhị phân không? Trường hợp 1: Có một nhóm động gồm khoảng 50-200 máy (nút erlang). Nội dung được thêm vào hoặc xóa đi liên tục, cứ khoảng 10 phút lại có một nội dung được thêm vào hoặc xóa đi.
Tôi muốn biết cách hiển thị tin nhắn chào mừng "Chào mừng người dùng, bạn đã đăng nhập" sau khi người dùng đăng nhập và tin nhắn đó sẽ biến mất trong vòng 5 giây. Tin nhắn sẽ hiển thị một lần sau khi người dùng đăng nhập thành công, nhưng sẽ không hiển thị lại khi người dùng truy cập trang chủ liên tục trong cùng một phiên. Bởi vì tôi là ho
Mã của tôi hoạt động tốt nếu tôi chỉ sử dụng thông báo Welcome, nhưng khi in con trỏ p->client_name thì thông báo không được căn giữa. Vậy câu hỏi của tôi là làm thế nào tôi có thể căn giữa tin nhắn và tên khách hàng như thể chúng là một tin nhắn. Tại sao hiện tại chỉ có
Tôi là một lập trình viên xuất sắc, rất giỏi!