[c/c++]柔性数组

/ 29,475评论 / 118714阅读 / 0点赞

柔性数组

在C99标准之后,在结构体中最后一个元素允许是未知大小的,称之为柔性数组

struct CoolArr_s{
	int len;
	char arr[];
};
#include "stdio.h"
#include "stdlib.h"

struct CoolArr_s
{
        int len;
        char arr[];
};

int main()
{
        //这里给arr的长度为10个char的大小
        struct CoolArr_s* p = (struct CoolArr_s*)malloc(sizeof(int) + sizeof(char) * 10);
        for (int i = 10; i--;)
        {
                (p->arr)[i] = i + '0';
                printf("%d " ,(p->arr)[i]);
        }
        printf("\n CoolArr_s: %d, *p: %d\n", sizeof(struct CoolArr_s), sizeof(*p));
        return 0;
}

在C++中的柔性数组

注意:在c++中并不建议使用柔性数组,而应考虑使用array代替。即使它可以使用在struct和class中,但部分编译器是不支持这种操作的。

#include <iostream>
#include <array>
using namespace std;

int main()
{
        //数组长度
	const int len_arr = 10;
        //定义数组
	array<int, len_arr> arr;
        //array::data()返回数组的首地址
        //array::begin()返回的是迭代器iterator
	int *arr_p = arr.data();
	for (int i = len_arr; i--;)
	{
		arr_p[i] = i;
		cout << arr[i] << " ";
	}
	cout << endl;
	return 0;
}
  1. Davidfrify说道:

    buy cheap propecia without rx order cheap propecia propecia order

  2. RonaldSwobe说道:

    http://finasteride.store/# get generic propecia price

  3. Davidfrify说道:

    lisinopril 5 mg brand name in india buy 20mg lisinopril buy lisinopril mexico

  4. RandallGuesE说道:

    Cytotec 200mcg price: buy cytotec in usa – purchase cytotec

  5. RandallGuesE说道:

    propecia pills: buying cheap propecia without prescription – cost cheap propecia without insurance

  6. Harryvob说道:

    This site definitely has all of the information I needed concerning this subject and didn’t know who to ask.
    https://englishmax.ru/

  7. RonaldSwobe说道:

    http://cytotec.club/# cytotec buy online usa

  8. RandallGuesE说道:

    can i buy lisinopril online: lisinopril 10 mg cost – where to buy lisinopril

  9. RonaldSwobe说道:

    http://nolvadex.life/# tamoxifen joint pain

  10. Davidfrify说道:

    cost propecia prices cost of propecia without prescription cost cheap propecia without a prescription

  11. RandallGuesE说道:

    cheap propecia without insurance: cost propecia tablets – cheap propecia prices

  12. Davidfrify说道:

    propecia pill order generic propecia without rx cost propecia without dr prescription

  13. HiramCem说道:

    Im Jahr 2019 bietet das Tipico Casino seinen Kunden einen groГџzГјgigen Bonus, um sie fГјr ihre Treue zu belohnen. Dieser Bonus kann in Form von Freispielen, Einzahlungsboni oder sogar Reisen und anderen tollen Preisen angeboten werden.

    Um in den Genuss dieses Bonus zu kommen, müssen die Spieler lediglich die angegebenen Bedingungen erfüllen, die in der Regel einfach und unkompliziert sind. Dies kann beispielsweise eine Mindesteinzahlung oder eine bestimmte Anzahl an Einsätzen innerhalb eines bestimmten Zeitraums beinhalten.

    Der Tipico Casino Bonus 2019 ist eine großartige Möglichkeit, um die Gewinnchancen zu erhöhen und das Spielerlebnis noch spannender zu gestalten. Mit etwas Glück können die Spieler zusätzliche Gewinne erzielen und noch mehr Spaß beim Spielen haben.

    Es ist jedoch wichtig zu beachten, dass jeder Bonus bestimmte Bedingungen und Einschränkungen hat, die eingehalten werden müssen. Bevor man sich also für einen Bonus entscheidet, sollte man sich genau über die jeweiligen Bedingungen informieren, um sicherzustellen, dass man sie erfüllen kann.

    Alles in allem bietet das Tipico Casino seinen Spielern mit dem Bonus 2019 eine tolle Möglichkeit, um das Spielerlebnis zu verbessern und die Gewinnchancen zu erhöhen. Es lohnt sich also, regelmäßig vorbeizuschauen und sich die aktuellen Angebote nicht entgehen zu lassen. Viel Spaß und viel Erfolg beim Spielen!
    https://tipicocasino.one/

  14. Davidfrify说道:

    purchase cytotec buy cytotec pills online cheap purchase cytotec

  15. TimsothyPal说道:

    В нашем обществе, где диплом – это начало успешной карьеры в любом направлении, многие ищут максимально быстрый и простой путь получения качественного образования. Факт наличия официального документа об образовании переоценить просто невозможно. Ведь именно диплом открывает двери перед всеми, кто собирается вступить в профессиональное сообщество или учиться в высшем учебном заведении.
    Предлагаем максимально быстро получить любой необходимый документ. Вы имеете возможность купить диплом, что становится отличным решением для человека, который не смог завершить образование или потерял документ. Каждый диплом изготавливается с особой аккуратностью, вниманием к мельчайшим нюансам. В результате вы сможете получить 100% оригинальный документ.
    Преимущества этого решения состоят не только в том, что можно оперативно получить диплом. Весь процесс организовывается удобно, с профессиональной поддержкой. От выбора требуемого образца диплома до консультации по заполнению личной информации и доставки в любой регион страны — все под полным контролем опытных мастеров.
    Всем, кто хочет найти оперативный способ получения требуемого документа, наша компания предлагает выгодное решение. Приобрести диплом – это значит избежать длительного обучения и сразу перейти к достижению личных целей: к поступлению в университет или к началу трудовой карьеры.

    https://dlplomanrussian.com

  16. WilliamRen说道:

    https://finasteride.store/# order cheap propecia price

  17. WilliamRen说道:

    https://ciprofloxacin.tech/# ciprofloxacin over the counter

  18. WilliamRen说道:

    http://ciprofloxacin.tech/# ciprofloxacin mail online

  19. Scottvaw说道:

    주식신용
    로드스탁과의 레버리지 스탁: 투자의 새로운 분야

    로드스탁을 통해 제공하는 레버리지 스탁은 증권 투자법의 한 방법으로, 큰 수익률을 목적으로 하는 투자자들을 위해 유혹적인 선택입니다. 레버리지를 사용하는 이 방법은 투자자들이 자신의 투자금을 넘어서는 투자금을 투입할 수 있도록 함으로써, 주식 시장에서 훨씬 큰 힘을 가질 수 있는 방법을 공급합니다.

    레버리지 스탁의 기본 원칙
    레버리지 스탁은 원칙적으로 투자금을 빌려 사용하는 방식입니다. 예시를 들어, 100만 원의 투자금으로 1,000만 원 상당의 증권을 구매할 수 있는데, 이는 투자자들이 기본적인 투자 금액보다 훨씬 훨씬 더 많은 주식을 구매하여, 증권 가격이 올라갈 경우 관련된 훨씬 더 큰 수익을 얻을 수 있게 해줍니다. 하지만, 주식 값이 내려갈 경우에는 그 손실 또한 커질 수 있으므로, 레버리지 사용을 사용할 때는 조심해야 합니다.

    투자 전략과 레버리지
    레버리지는 특히 성장 가능성이 상당한 기업에 투자할 때 도움이 됩니다. 이러한 기업에 높은 비중으로 투입하면, 성공할 경우 막대한 수익을 얻을 수 있지만, 반대 경우의 경우 상당한 위험성도 짊어져야 합니다. 따라서, 투자하는 사람은 자신의 위험 관리 능력을 가진 상장 분석을 통해 통해, 일정한 기업에 얼마만큼의 투자금을 투자할지 결정하게 됩니다 합니다.

    레버리지 사용의 장점과 위험성
    레버리지 방식의 스탁은 상당한 수익을 제공하지만, 그만큼 높은 위험성 따릅니다. 증권 장의 변동성은 추정이 힘들기 때문에, 레버리지 사용을 이용할 때는 언제나 시장 경향을 정밀하게 살펴보고, 손실을 최소로 줄일 수 있는 방법을 마련해야 합니다.

    맺음말: 신중한 결정이 필요
    로드스탁을 통해 제공하는 레버리지 방식의 스탁은 효과적인 투자 도구이며, 적당히 사용하면 상당한 이익을 가져다줄 수 있습니다. 그러나 상당한 위험도 생각해 봐야 하며, 투자 결정은 필요한 사실과 조심스러운 고려 후에 진행되어야 합니다. 투자하는 사람의 재정 상황, 위험 수용 능력, 그리고 장터 상황을 고려한 균형 잡힌 투자 전략이 핵심입니다.

  20. RonaldSwobe说道:

    http://cytotec.club/# Abortion pills online

  21. WilliamRen说道:

    https://nolvadex.life/# tamoxifen for men

  22. CharlesPum说道:

    SEO раскрутка сайта в топ https://seositejob.ru/ Яндекс и Google от профессионалов.

  23. RonaldSwobe说道:

    https://nolvadex.life/# where can i buy nolvadex

  24. Davidfrify说道:

    cipro ciprofloxacin cipro 500mg best prices cipro

  25. RandallGuesE说道:

    tamoxifen citrate: tamoxifen cancer – cost of tamoxifen

  26. RonaldSwobe说道:

    http://nolvadex.life/# tamoxifen dose

  27. Davidfrify说道:

    buying cheap propecia without rx order cheap propecia prices propecia otc

  28. JamesgaF说道:

    Das Boomerang Casino ist eine aufregende Online-Glücksspiel-Plattform, die Spielern die Möglichkeit bietet, ihr Glück in einer Vielzahl von Casino-Spielen zu versuchen. Mit einer großen Auswahl an Slots, Tischspielen und Live-Casino-Spielen ist für jeden Geschmack etwas dabei.

    Das Casino zeichnet sich durch sein attraktives Design und seine benutzerfreundliche Oberfläche aus, die es Spielern leicht macht, sich auf der Website zu navigieren. Darüber hinaus bietet das Boomerang Casino eine Vielzahl von Boni und Aktionen, die es den Spielern ermöglichen, ihr Spielerlebnis zu verbessern und ihre Gewinnchancen zu erhöhen.

    Ein weiteres Highlight des Boomerang Casinos ist die Möglichkeit, Live-Casino-Spiele zu spielen, bei denen Spieler in Echtzeit gegen echte Dealer antreten können. Dies schafft eine authentische Casino-Atmosphäre und sorgt für ein noch spannenderes Spielerlebnis.

    Darüber hinaus bietet das Boomerang Casino eine Vielzahl von Zahlungsmethoden, um sicherzustellen, dass Ein- und Auszahlungen schnell und bequem getätigt werden können. Die Website ist auch sicher und geschützt, um die persönlichen Daten der Spieler zu schützen.

    Insgesamt bietet das Boomerang Casino eine unterhaltsame und spannende Spielerfahrung fГјr alle, die gerne online spielen. Mit seiner groГџen Auswahl an Spielen, attraktiven Boni und einem benutzerfreundlichen Design ist es definitiv einen Besuch wert.
    https://boomerangcasino.one/

  29. Davidfrify说道:

    cytotec abortion pill buy cytotec pills buy cytotec

  30. RobertMum说道:

    Магазин, где мне посоветовали белые раковины для ванной комнаты.

  31. WilliamRen说道:

    https://finasteride.store/# buy propecia now

  32. WilliamRen说道:

    https://lisinopril.network/# lisinopril 5 mg tablet price in india

  33. RandallGuesE说道:

    buy cipro online: buy generic ciprofloxacin – ciprofloxacin order online

  34. RandallGuesE说道:

    buy generic ciprofloxacin: buy cipro – buy generic ciprofloxacin

  35. Davidfrify说道:

    lisinopril for sale zestoretic 20 lisinopril 2.5 pill

  36. Gichardkaf说道:

    В современном мире, где диплом является началом удачной карьеры в любой отрасли, многие ищут максимально простой путь получения образования. Важность наличия официального документа трудно переоценить. Ведь диплом открывает дверь перед всеми, кто собирается вступить в профессиональное сообщество или учиться в ВУЗе.
    В данном контексте наша компания предлагает быстро получить этот важный документ. Вы сможете приобрести диплом, что становится удачным решением для всех, кто не смог закончить обучение или потерял документ. Все дипломы изготавливаются с особой аккуратностью, вниманием к мельчайшим элементам. На выходе вы получите полностью оригинальный документ.
    Плюсы этого подхода состоят не только в том, что можно быстро получить диплом. Процесс организован удобно, с нашей поддержкой. Начав от выбора необходимого образца до консультации по заполнению личной информации и доставки в любое место страны — все находится под полным контролем опытных мастеров.
    В результате, для тех, кто ищет быстрый и простой способ получения необходимого документа, наша компания предлагает выгодное решение. Приобрести диплом – это значит избежать долгого обучения и сразу перейти к достижению своих целей: к поступлению в ВУЗ или к началу трудовой карьеры.

    https://dlplomanrussian.com

  37. RandallGuesE说道:

    how cÉ‘n i get cheap propecia pills: buy cheap propecia without rx – buy propecia without rx

  38. RandallGuesE说道:

    cytotec abortion pill: buy cytotec pills – buy cytotec pills online cheap

  39. Davidfrify说道:

    antibiotics cipro cipro 500mg best prices ciprofloxacin generic

  40. Robinteamy说道:

    Рубероид РКК – это высококачественный материал, отвечающий всем требованиям госта. Он имеет высокую прочность, вес и габариты, а также теплостойкость до 80 градусов Гидроизол ХПП 2,5

  41. Davidfrify说道:

    lisinopril 40 mg lisinopril 30 mg price lisinopril 250mg

  42. Davidfrify说道:

    cipro online no prescription in the usa buy cipro online purchase cipro

  43. RandallGuesE说道:

    buy cipro online without prescription: ciprofloxacin 500mg buy online – antibiotics cipro

  44. RobertMum说道:

    Специализированный магазин, где можно найти широкий выбор раковина salini для вашей ванной комнаты.

  45. RandallGuesE说道:

    order cheap propecia without a prescription: cost of propecia pills – buy cheap propecia online

  46. WilliamRen说道:

    https://finasteride.store/# propecia without a prescription

  47. WilliamRen说道:

    https://nolvadex.life/# nolvadex 10mg

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注